Javascript 在FB.init()之前调用的间歇FB.login()
我试图在我的项目中实现FacebookConnect,它90%的时间都有效。我正在运行以下代码启动FB SDKJavascript 在FB.init()之前调用的间歇FB.login(),javascript,facebook,Javascript,Facebook,我试图在我的项目中实现FacebookConnect,它90%的时间都有效。我正在运行以下代码启动FB SDK window.fbAsyncInit = function() { // init the FB JS SDK console.log("initing") FB.init({ appId : app_id, status : true, xfbml : true }); FB.g
window.fbAsyncInit = function() {
// init the FB JS SDK
console.log("initing")
FB.init({
appId : app_id,
status : true,
xfbml : true
});
FB.getLoginStatus(function(response) {
console.log("getting login status", response)
if (response.status === 'connected') {
canEnter = 1;
var uid = response.authResponse.userID;
$.ajax
({
type: "POST",
url: siteurl+"/Introduction/ajax_facebook",
data: {'facebook_user_id': uid},
success: function(data)
{
}
});
}
});
};
当它工作时,我的logconsole.log(“getting login status”,response)
会运行,但它经常不会被调用,当我单击“使用Facebook登录”按钮时,会在FB.init()之前调用错误FB.login()
看起来FB.init永远不会结束。为什么会这样?您是否检查了浏览器控制台和网络选项卡以查看发生了什么?也许是太慢了?一般来说,我会在FB.login中使用我自己的登录按钮(可能您已经在这样做了),并且只在调用FB.init时启用它。控制台中没有任何内容,因此我自己的日志记录。当它不工作时,FB.init不会被调用,因此登录按钮永远不会被调用。请同时显示您的登录按钮代码。顺便说一句,希望您知道任何人都可以向您的服务器端脚本发送任何ID,对吗?