将facebook访问令牌传递给服务器后端

时间:2015-04-19 06:49:30

标签: android facebook-graph-api facebook-sdk-4.0

我有一个Android应用程序,我用facebook android sdk构建登录。 它接收一个长期访问令牌(您使用默认登录按钮正常获得的令牌)。并将其传递给服务器后端。

服务器后端使用访问令牌登录到facebook。

该应用处于发布模式(已签名的apk)。

问题是,这只适用于我(开发人员)。将应用程序分发给我的朋友时,该应用程序登录到Facebook,但服务器后端无法使用该令牌(对于他们,对于我的帐户,这可以正常工作)。

Facebook应用程序不是沙盒模式(在沙盒模式下,只有我可以使用Android应用程序登录。你看到现在每个人都可以使用Android应用程序登录,问题是,只有开发人员可以将令牌转发到服务器并使用它。)

任何人都知道为什么?

1 个答案:

答案 0 :(得分:0)

感谢Heshan的快速回复。

对于将来遇到类似问题的人来说,问题是:

服务器后端运行HTTP服务器,如果有人登录网站,服务器会要求权限:public_profile(默认),电子邮件。

Android应用程序没有设置权限,所以它只询问public_profile(默认),而不是电子邮件。

由于我首先登录了该网站,因此我的帐户拥有该应用的两项权限。

所有其他人都使用Android应用程序进行了记录,并且只批准了public_profile。因此错误。