服务器必须做的事情; 只需检查任何访问令牌的有效性.
客户端向FB服务器发送FB.getLoginStatus获取的用户ID和访问令牌.
正如我所料,会有任何url检查访问令牌的有效性,例如
http://xxx.facebook.com/access_token?=xxxxxxxxxxxxxxxxxxxxxxxxxxxx
返回它是否可用.
或者是否有任何API(服务器端)?
ryn*_*nop 130
官方支持的方法是:
GET graph.facebook.com/debug_token?
input_token={token-to-inspect}
&access_token={app-token-or-admin-token}
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅检查令牌文档.
一个示例响应是:
{
"data": {
"app_id": 138483919580948,
"application": "Social Cafe",
"expires_at": 1352419328,
"is_valid": true,
"issued_at": 1347235328,
"metadata": {
"sso": "iphone-safari"
},
"scopes": [
"email",
"publish_actions"
],
"user_id": 1207059
}
}
Run Code Online (Sandbox Code Playgroud)
小智 74
如果收到错误,您可以简单地请求https://graph.facebook.com/me?access_token=xxxxxxxxxxxxxxxxx,令牌无效.如果您获得具有id属性的JSON对象,则它是有效的.
不幸的是,这只会告诉您令牌是否有效,而不是来自您的应用.
And*_*ndy 30
只是想让你知道,直到今天我首先获得了一个app访问令牌(通过GET请求到Facebook),然后使用收到的令牌作为app-token-or-admin-token:
GET graph.facebook.com/debug_token?
input_token={token-to-inspect}
&access_token={app-token-or-admin-token}
Run Code Online (Sandbox Code Playgroud)
但是,我刚刚意识到了一种更好的方法(需要少一个GET请求的额外好处):
GET graph.facebook.com/debug_token?
input_token={token-to-inspect}
&access_token={app_id}|{app_secret}
Run Code Online (Sandbox Code Playgroud)
作为Facebook的文档中描述的访问令牌这里.
简单请求(HTTP GET):
https://graph.facebook.com/USER_ID/access_token=xxxxxxxxxxxxxxxxx
Run Code Online (Sandbox Code Playgroud)
就是这样。
| 归档时间: |
|
| 查看次数: |
95645 次 |
| 最近记录: |