我是 OAuth 的新手,我正在尝试使用 Facebook Connect使用我的网络应用程序。
我已成功获得验证 token ,但我的问题是“获取”访问 token 。我如何获取它? Facebook 文档告诉我使用此 URL 获取访问 token :
https://graph.facebook.com/oauth/access_token?'
+ 'client_id=XXXXXXXXXXXX& redirect_uri=http://www.mysite.com/fbconn/index.html&display=touch&'
+ 'client_secret=axxxxxcxxxxxxxxxxx&code=' + code;
当我使用它时,我在空白页面上看到访问 token ,但我想使用 JavaScript (Ajax)、PHP 或其他方式获取它。这可能吗?我认为访问 token 会像验证码一样附加到我的重定向 URI,但我从未被重定向到我的页面。我做错了什么?
最佳答案
您需要添加 &type=user_agent
到请求。您将获得具有以下格式的散列标记的 AuthToken。
http://yourredirecturi#code=[accesstoken]
如果您将请求设置为 &type=web_server
,您将获得 AuthToken 作为查询字符串参数:<a href="http://yourredirecturi&code=[accesstoken]" rel="noreferrer noopener nofollow">http://yourredirecturi&code=[accesstoken]</a>
.
这里是如何实现 Facebook 的 OAuth 协议(protocol)的完整解释。代码示例位于 ASP.NET MVC 中,但它应该可以很好地翻译成任何语言:
关于javascript - 使用 Facebook OAuth 2.0 - 如何获取访问 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2988236/