具有Android的Facebook SDK,获取代码而不是访问令牌

Shy*_*net 5 authentication sdk android facebook

我正在构建一个包含加载网站的WebView的应用程序。当用户按下网站上的“与Facebook连接”时,我立即使用Facebook SDK打开“使用Facebook登录”,以便使用用户设备上的应用程序而非Web表单简化身份验证步骤。

现在,我的网站正在使用vBulletin,登录完成后它将重定向到:

http://mywebsite.com/community/index.php?dofbredirect=1&code=[MY_CODE]&state=[SOME_STATE]

我可以从用户在网站上按下“与Facebook连接”时加载的Web视图中获得的状态,但是该代码是我无法获得的,我只能获取访问令牌。

有没有使用Facebook SDK交换代码而不是访问令牌的方法?

ifa*_*our 2

SDK 请求 aresponse_type的值token。看起来要实现你想要的,你需要手动构建登录处理程序并请求 a response_typeof value code。有关此内容的更多信息,请访问: https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/

来源: https: //github.com/facebook/facebook-android-sdk/blob/b384c0655fe96db71229bfdcb981a522f3f1e675/facebook/src/com/facebook/internal/ServerProtocol.java#L59-L60