Php Facebook SDK getUser()方法在成功授权后返回0

Php Facebook SDK getUser()方法在成功授权后返回0,php,facebook,facebook-graph-api,Php,Facebook,Facebook Graph Api,我最近更换了主机,注意到Facebook登录不再有效。它没有抛出任何错误,但根本不起作用 我的代码: 我的工作流程: 用户单击登录按钮(getLoginUrl()方法) Facebook授权窗口弹出 用户接受它并被重定向回我的页面,代码=…&状态= getUser()返回0,但应返回用户ID 我试着用谷歌搜索答案。这就是我所尝试的: 要更改getCode()方法->\u请求问题 打开/关闭cookies 我还可以做些什么来解决这个问题吗?试试下面的方法,在进行身份验证的页面下方添加JS代码 &

我最近更换了主机,注意到Facebook登录不再有效。它没有抛出任何错误,但根本不起作用

我的代码:

我的工作流程:

  • 用户单击登录按钮(getLoginUrl()方法)
  • Facebook授权窗口弹出
  • 用户接受它并被重定向回我的页面,代码=…&状态=
  • getUser()返回0,但应返回用户ID
  • 我试着用谷歌搜索答案。这就是我所尝试的:

  • 要更改getCode()方法->\u请求问题
  • 打开/关闭cookies

  • 我还可以做些什么来解决这个问题吗?

    试试下面的方法,在进行身份验证的页面下方添加JS代码

    <div id="fb-root"></div>
    
    <script type="text/javascript">
        window.fbAsyncInit = function()
                {
                    FB.init
                    ({
                        appId   : 'your fb app id',
                        status  : true, // check login status
                        cookie  : true, // enable cookies to allow the server to access the session
                        xfbml   : true, // parse XFBML
                        oauth   : true
                    });
                    FB.Event.subscribe('auth.login', function()
                    {
                        window.location.reload();
                    });
                };
    
              (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);
                }());
    </script>
    

    不幸的是,这并没有解决问题。我的网站登录失败:我刚尝试用FB登录到你的网站,但得到一个空白页面。也许你正在修复一些问题,但是你能检查一下你的应用程序设置吗?如果“客户端OAuth登录”设置为“是”,那么“应用程序中心列出的平台”设置为“是”?“客户端OAuth登录”设置为“已启用”,但我在哪里可以找到“应用程序中心列出的平台“?在应用程序详细信息选项卡下,许多用户在nginx服务器上也有类似情况,其中Lib无法正确获取查询字符串,您可能需要对此进行检查。还要确保您的库包含文件fb\u ca\u chain\u bundle.crt。这是lib,最后在app settings app->details->configure app center permissions Auth Token参数中设置为Query string
    require_once 'src/facebook.php'; //include the facebook php sdk
    $facebook = new Facebook(array(
        'appId'  => 'XXXXXXXXXXXXXX',    //app id
        'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX', // app secret
    ));
    
    $user_id = $facebook->getUser();