Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用getLoginStatus触发Js重定向_Javascript_Authorization_Facebook Javascript Sdk_Oauth 2.0 - Fatal编程技术网

Javascript 使用getLoginStatus触发Js重定向

Javascript 使用getLoginStatus触发Js重定向,javascript,authorization,facebook-javascript-sdk,oauth-2.0,Javascript,Authorization,Facebook Javascript Sdk,Oauth 2.0,如果用户在访问我的网站并连接到我的Fb应用程序时登录到Facebook,我尝试使用Fb.getLoginStatus实现Js重定向到另一个页面。它不起作用了,我不知道为什么!这可能吗?任何建议都将不胜感激 以下是我的代码-我正在使用PHP include将其插入到我的页面中,Fb Javascript SDK init函数似乎工作正常: <script type="text/javascript"> window.fbAsyncInit = function() { FB

如果用户在访问我的网站并连接到我的Fb应用程序时登录到Facebook,我尝试使用Fb.getLoginStatus实现Js重定向到另一个页面。它不起作用了,我不知道为什么!这可能吗?任何建议都将不胜感激

以下是我的代码-我正在使用PHP include将其插入到我的页面中,Fb Javascript SDK init函数似乎工作正常:

<script type="text/javascript">
  window.fbAsyncInit = function() {
    FB.init({
      appId  : 'my-app-id',
      status : true, // check login status
      cookie : true, // enable cookies to allow the server to access the session
      xfbml  : true,  // parse XFBML
      channelUrl  : 'http://www.jamesherlihy.com/sandbox/fb-channel.html', // Custom Channel URL
      oauth : true //enables OAuth 2.0
    });
  };

  (function() {
    var e = document.createElement('script');
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
    e.async = true;
    document.getElementById('fb-root').appendChild(e);
  }());

  FB.getLoginStatus(function(response) {

    /* if user is logged in to Fb and connected to Soulmap, redirect them to logged-in homepage */

    if (response.authResponse){
    window.location = "http://www.jamesherlihy.com/fb-03-logged-in.php";
    }

    /* if user is NOT logged in to Fb and/or connected to Soulmap, do not execute any script */

});
</script>

window.fbAsyninit=函数(){
FB.init({
appId:“我的应用程序id”,
状态:true,//检查登录状态
cookie:true,//启用cookie以允许服务器访问会话
xfbml:true,//解析xfbml
频道URL:'http://www.jamesherlihy.com/sandbox/fb-channel.html“,//自定义频道URL
oauth:true//启用oauth 2.0
});
};
(功能(){
var e=document.createElement('script');
e、 src=document.location.protocol+'//connect.facebook.net/en_US/all.js';
e、 异步=真;
document.getElementById('fb-root').appendChild(e);
}());
FB.getLoginStatus(函数(响应){
/*若用户登录到Fb并连接到Soulmap,则将其重定向到登录的主页*/
if(response.authResponse){
window.location=”http://www.jamesherlihy.com/fb-03-logged-in.php";
}
/*如果用户未登录到Fb和/或未连接到Soulmap,请不要执行任何脚本*/
});

您需要确保页面中的某个地方有一个
,因为脚本引用了它。

您好,谢谢您的回复!这是一个好主意,因为我之前已经忽略了这一点,但在本例中,我确实在页面上的“”直接位于该脚本之前。所以在本例中并不是这样。我正在用其他更简单的Js命令进行测试,而getLoginStatus函数似乎不适合我。