我已经创建了一个可以正常使用的应用,但是如果用户尚未授权我的应用,则必须执行以下操作(假设他们在Facebook并登录) -
然而我注意到Zynga游戏,如Mafia Wars 1/2,Farmville等,当你去应用程序时,如果它没有被授权,它会直接转到页面中的权限,而不是弹出窗口从而消除了一步。此外,权限对话框是全宽的,没有应用程序侧边栏。
有谁知道我如何复制这个流程?让用户在Facebook页面中进行授权而不是通过弹出窗口更容易。如何在页面内获取权限?
提前致谢
答案 0 :(得分:0)
用户访问您的应用程序的页面选项卡后,您可以通过将页面ID与signed_requests中的用户ID进行比较来检查他是否与您的应用程序连接,对于未经授权的用户ID将是相同的。在这种情况下,您可以通过将用户的浏览器重定向到“登录URL”来启动身份验证流程。
如果您希望它是完整页面,只需使用JavaScript进行重定向:
window.top.location = 'https://www.facebook.com/dialog/oauth?
client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&scope=COMA_SEPARATED_PERMISSIONS'
如果您使用PHP,则可以通过调用Facebook->getLoginUrl
方法构建登录URL。