2011-09-05 61 views
1

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

这是新的access_token: AAACNiIlBuO0BACgjrbFp1a8dAUxP4t0ojVElFA88aJFVxG3gISvETafwEUzbMzLPxAVcTUWXyUJaBgy1OxBQHdneW1v0ZD

+0

我已合并您的未注册帐户,您现在可以完全控制您的问题和答案。 ,如果您想添加更多信息,请修改您的问题,或根据您收到的答案使用评论设施发表评论。 n OpenID与您的帐户,所以你不会失去目前绑定到你的当前帐户的cookie。 –

回答

0

我知道问题是什么,“OAuth的迁移”应用程序设置设置启用,它会返回一个加密的访问令牌。

+0

您好欧文...设置“OAuth迁移”在高级页面中不可用:https://developers.facebook.com/apps/145094738849065/advanced – Gabrielizalo

0

该cookie被命名为fbsr_ APP-ID并且它包含签名的请求。 当你解析那个签名的请求时,你不会立即得到acces令牌,而是需要再次通过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