1

我们的应用程序从access_token中获取facebook session_key,但是我今天发现access_token格式改变了,access_token的返回值没有分隔符'|',我无法获取新格式的session_key,请帮助我。

这是新的 access_token:AAACNiIlBuO0BACgjrbFp1a8dAUxP4t0ojVElFA88aJFVxG3gISvETafwEUzbMzLPxAVcTUWXyUJaBgy1OxBQHdneW1v0ZD

4

2 回答 2

0

我知道问题出在哪里,应用设置中的“OAuth 迁移”设置已启用,它将返回一个加密的访问令牌。

于 2011-09-05T09:05:33.770 回答
0

该 cookie 名为 fbsr_APP -ID,它包含签名的请求。当您解析该签名请求时,您不会立即获得访问令牌,而是需要再次使用 facebook 进行身份验证的代码。该方法与标准登录的签名请求几乎相同,但不完全一样。redirect_uri 必须是空字符串。并且任何 " 都需要删除。用户 id 在签名请求中仍然可以直接使用:

{u'issued_at': 1316611903, 
 u'code': u'2.AQB0gn0ueVWMpj-c.3600.1316617200.1-684450912|RTJur1Zmr__4d4uX5vg25tc1X4M', 
 u'user_id': u'*USER-ID*', u'algorithm': u'HMAC-SHA256'}

来自身份验证的响应也发生了变化。之前它是一个包含访问令牌的 URL 编码字符串。现在它还包含一个 expires 值:令牌有效的秒数。它看起来像这样:

access_token="AAADYZBFNocBMBAK8Z.....2CljZAk1xX4rd9quEoXTygZDZD"&expires=6295
于 2011-10-12T18:24:40.560 回答