-1

我正在尝试在我的网站上使用 facebook 登录,这是我加载 sdk 的方式

 window.fbAsyncInit = function() {
 FB.init({
   appId      : '362869753746986', // App ID
   channelUrl : '//WWW.FESTIVEHUB.COM/channel.html', // Channel File
    status     : true, // check login status
   cookie     : true, // enable cookies to allow the server to access the session
   xfbml      : true  // parse XFBML
 });

// Additional initialization code here
};

// Load the SDK Asynchronously
(function(d){
 var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
 if (d.getElementById(id)) {return;}
 js = d.createElement('script'); js.id = id; js.async = true;
 js.src = "//connect.facebook.net/en_US/all.js";
 ref.parentNode.insertBefore(js, ref);
}(document));

和登录按钮

 <div class="fb-login-button" data-show-faces="true" data-width="200" data-max-rows="2"></div>

如果我单击登录按钮,它会显示一个新的 facebook 登录窗口,如果我这样做会登录问题,但是在登录后,新的小窗口仍然存在并且它是空白的,但是如果我手动关闭它并刷新我的页面,登录按钮是替换为我的 FB 个人资料图片,因此我需要自动关闭登录窗口,并且我需要一个回调函数,以便我可以在登录后采取行动。如果值得注意的话,NB 正在处理 localhost!

4

1 回答 1

0

您的代码看起来不错,但您的问题可能是您的 channelUrl 文件。频道 URL 上的域、您的应用程序注册 URL 以及您尝试登录的 URL 都必须匹配。通道文件也需要有一行

<script src="https://connect.facebook.net/en_US/all.js"></script>

去工作。

于 2012-06-10T09:16:19.137 回答