FB.getLoginStatus始终返回status='未知'

FB.getLoginStatus always returns status='unknown'

本文关键字:未知 status getLoginStatus 返回 FB      更新时间:2023-09-26

如果我登录到facebook.com,我希望对FB.getLoginStatus的调用将返回状态="未授权"。相反,它返回status="unknown",即使我为"force"参数传递true也是如此。

如果我调用FB.login,然后调用FB.getLoginStatus,我得到的状态="已连接"。有道理。

如果我调用FB.login,重新加载页面,然后调用FB.getLoginStatus,我会得到status='unknown'。没有道理。如果我添加"true"作为第二个参数(即力),我仍然会得到status="unknown"。(在这种情况下,我希望状态为"未授权"。)

在实践中,似乎没有办法获得状态="未授权"。

我做错什么了吗?这是FB.getLoginStatus或其文档中的错误吗?

这是一个最小的测试页面:http://pastebin.com/NqiBXni2

上下文:

我正在编写一个网站小部件,用于显示公共Facebook页面的帖子。(无需通过应用程序访问令牌提示用户即可访问。)每条帖子都有一个"赞"/"不同"链接。为了确定是显示"赞"还是"不同",我需要知道浏览用户的Facebook ID是什么,这样我就可以检查它是否在帖子的赞列表中。

也许您禁用了第三方cookie。

为了稍微详细说明David的回答,Facebook将其描述为禁用第三方cookie时的"设计"结果。

不幸的是,我不确定最优雅的处理方式——至少在我的网站上,我需要一个宣誓令牌来加载一些数据。

即使第三方cookie没有被禁用,我也遇到了类似的问题。我所做的绕过是:如果我得到"未知"响应,我会调用FB.login,并在其中再次调用FB.loginStatus。这一次,FB返回了正确的值。

您使用http还是https?

不要使用http作为您的DEV主机!

只需使用https就可以了。