我需要更多的解释而非答案本身 - 我正在构建一个页面选项卡,它将从属于该页面的特定专辑中提取某些图像。这不需要访问令牌,因此无需向访问者请求权限。
我可以添加like / share选项,这些选项在没有访问令牌或授权的情况下也能正常工作。
如何在未请求授权的情况下获取基本用户信息(ID,名称等)?这是Facebook上的页面选项卡,因此访问者必须已登录。
如果我必须请求权限来执行本质上非常标准的操作,那么这似乎是反直觉的。
我正在使用javascript SDK。
答案 0 :(得分:1)
这是Facebook上的页面标签,因此访问者必须已登录。
用户可能已登录到Facebook - 但他不一定已连接到您的应用(尚未)。并且需要他,以获得他的用户ID。
拨打FB.login
,但不要求scope
参数中的任何权限 - 这将提示用户连接到您的应用,只给予其“基本”权限来阅读他的个人数据。这将在response.authResponse
中为您提供用户ID(并且还会导致他的用户ID在下次访问您的网页标签时包含在signed_request
中)。
之后,您可以通过图谱API调用/me
来获取他的基本用户信息。