2017-09-14 27 views
1

我的应用程序通过Facebook验证用户身份。它要求用户令牌的权限为public_profileuser_photos更新Facebook令牌以获得额外权限

有一天我发现所有注册用户都只有public_profile,并且应用程序无法访问他们的照片,因为我没有从Facebook批准user_photos权限。

毕竟我得到了这个批准,并且通过Facebook登录的新用户令牌有user_photos权限。

但是遗留用户没有,他们的标记没有自动更新以获得额外的user_photos权限。

有没有办法刷新Facebook令牌,而无需注销并再次登录?

+0

_“的标记没有自动更新“ - - 当然他们没有,哦,哦。每个用户仍然必须自行决定是否要将该权限授予您的应用程序。 – CBroe

回答

0

您不能在没有用户交互的情况下刷新令牌,这会使权限授权的整个点毫无意义。你可以只检查所授予的权限,并再次调用FB.login(如果使用的是JS SDK),如果一些权限丢失:https://developers.facebook.com/docs/graph-api/reference/user/permissions/

这可能对你也很感兴趣:https://developers.facebook.com/docs/facebook-login/handling-declined-permissions/

+0

这也可能有用:https://developers.facebook.com/docs/facebook-login/handling-declined-permissions/ – Bangdel

+0

thanx,将其添加到答案 – luschn