Facebook完全权限AccessToken替代离线访问令牌
目前我正在使用桌面Windows服务下载我的Facebook页面见解/页面喜好/朋友等图形数据。 所以,为此,我在我的Facebook页面上添加了应用程序,并生成了完全权限的离线访问令牌。 所以,使用我从上一年正确下载我的Facebook页面的见解。
但是,由于Facebook弃用了离线acccess令牌。 请任何人都可以帮助我如何生成访问令牌的完全权限下载我的网页洞察数据,而无需登录(对任何用户/用户对话(允许等))。
现在,我正在尝试通过一些API来生成访问令牌,如下所示: - https://graph.facebook.com/oauth/access_token?client_id=xxxx&client_secret=xxxxx&grant_type=client_credentials
但是,使用上面的调用我得到访问令牌(短的令牌) - 例如: -
123484913842345|jkioEjsRAhFrNdertg9zuxPiopl
尝试查看图形数据时,使用上述访问令牌获取以下错误: -
{"error": {"message": "Unsupported get request.","type": "GraphMethodException","code": 100 }}
但是,我发现这个访问令牌没有完整的权限并且寿命短。
当我使用我的旧离线访问令牌时,它会正确给出响应。 (这个令牌在一段时间后会关闭)。 因此,生成大约60天的同一类型的访问令牌。 请帮助我。 我如何以完整的110字符长度生成访问令牌。 此外,我正在使用Windows服务,所以任何人都可以帮助这个如何在没有登录的情况下生成访问令牌(用户/ UI活动)
要解决这个问题,你需要扩展短命令标记。
您也可以在没有任何用户交互的情况下调试访问令牌,以查看扩展访问令牌的操作是否有效。
此链接是关于离线访问到期的很好参考。
当您使用此URL调试访问令牌时:
https://graph.facebook.com/debug_token?input_token=INPUT_TOKEN&access_token=ACCESS_TOKEN
INPUT_TOKEN是用户访问令牌
ACCESS_TOKEN是这样形成的应用访问令牌:APP_ID | APP_SECRET为了说明这一点,如果我的应用ID是123
且应用密码是abc
那么应用访问令牌是123|abc
简单的解决方案只需使用PHP SDK调用以下功能
$facebook->setExtendedAccessToken();
并在它获得extented访问令牌后
$access_token = $facebook->getAccessToken();
要么
GET /oauth/access_token?
grant_type=fb_exchange_token&
client_id={app-id}&
client_secret={app-secret}&
fb_exchange_token={short-lived-token}
链接地址: http://www.djcxy.com/p/12133.html
上一篇: Facebook full permission AccessToken alternative to Offline access token
下一篇: How to change an EF connection string, based on subdomain of MVC web site?