1

所以我使用https://github.com/yahoo/yos-social-php而不是“php5”版本只是因为坦率地说它们都是一团糟,而这个稍微不那么混乱。

问题是一旦用户登录,登录一小时后登录就会过期。不管用户是否在此期间积极使用该网站,他们仍然被迫每小时重新登录一次。

找不到有关此的任何文档,欢迎提出任何建议。

4

2 回答 2

5

我认为雅虎不可能!Social SDK - PHP,一年前我们也遇到了类似的问题,使用相同的 git Repo。您正在使用。

在那之后我们使用了 GIGYA,它就像一个带有 yahoo 身份验证的魅力。看看它是否对你也有帮助。

于 2013-09-18T10:37:37.880 回答
2

雅虎官方开发人员文档确实确认“您可以使用访问令牌一小时,直到它过期”。看:

http://developer.yahoo.com/oauth/guide/oauth-refreshaccesstoken.html

然后它继续说“要获得新的访问令牌以供继续使用,请使用相同的过期令牌和 get_token 调用以提供新的访问令牌。” 还详细描述了如何准确调用此操作。签名本身看起来像:

https://api.login.yahoo.com/oauth/v2/get_token?oauth_nonce=ef3a091928d5491624c0ac54d697124422705091
  &oauth_consumer_key=123456891011121314151617181920
  &oauth_signature_method=plaintext
  &oauth_signature=55d4cf6bf417023ce5dcc3b77132fb021cd13b21abcdef%26
  &oauth_version=1.0
  &oauth_token=AJwxz0eyXRa._q0xKlggmMSpQzYjOZyqApyhHybqPzCsDr0-
  &oauth_timestamp=1204762971
  &oauth_session_handle=ALKVBsl8DHR1rsAHSwTmAxYIsIGs3l31syRaA_aaF.RDs.MknmVM4P

如今,许多 OAuth 提供商都是这样工作的,我们已经成功地将相同的技术用于 Salesforce.com 和许多其他 OAuth 提供商。

雅虎库真的很老了,即使是 php5 版本,在过去 3 年里也没有看到任何新的提交。上述方法可用于简单的 REST 调用,因此您实际上甚至可以绕过 PHP 库。

于 2013-09-15T07:07:30.077 回答