FB ID返回未定义

时间:2014-09-24 09:42:57

标签: javascript jquery facebook facebook-graph-api access-control

我使用var userID = (FB.getAuthResponse() || {}).userID;获取登录用户的ID,FB .init已正确初始化。 我遇到的问题是如果我把

var userID = (FB.getAuthResponse() || {}).userID;

document.ready();里面它以未定义的形式返回,而如果我把它放在一些javascript函数中并在点击按钮上调用该函数,它就可以正常工作。

任何人都知道可能是什么问题?

当我尝试直接在我的网站上访问它时,我也得到了这个:

  

XMLHttpRequest无法加载{CALL o be MADE}。没有   '访问控制允许来源'标题出现在请求的上   资源。来源' {我的网站地址}'因此是不允许的   访问。 (指数)

PS:我的Facebook页面标签中没有上述错误,我只是在尝试直接访问我的网站时才会收到此错误。

1 个答案:

答案 0 :(得分:1)

我建议使用异步方式检查用户是否已登录并获取其ID:

  

您不应该在页面加载时使用此方法。一般来说,它是   如果您不确定,请更安全地使用FB.getLoginStatus。

查看Facebook文档以获取代码和信息:https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus

当然你应该在FB.init之后调用它。