facebook-> getUser()返回0

 墮天使love蘇蘇_709 发布于 2023-01-31 12:02

每当我尝试登录时,会打开一个询问基本权限的提示,然后将其重定向到带有URL的redirect_uri

="> HTTP://本地主机/演示/代码= AQDwzia3Wx1BktixF59jVHbm0ViGVJm8Xhb2tNZDyYreZh0KoSJhrSsJ8Aa2KX3gocwR0XNQjQz7ZlBh26_nBi-3iOMByhVO2cxwJ8maC4IHxBacfqXjzqIyBaZQbWKUUxPI6VBrqBgFXQasj7PEtmug7lt93dK4fmMC2A4i2dUYU-gSvzn0f0ZdB3eT_aSvgR1KoLCmQgLh3xix4H05QR6LCP9nLtQC4l9rMJW83kS0PNmWq0COZYvGfuX1R7519Fn3iXRB9F0MTsK1KQ_ulpK84PUCkuMu8et88Lln0ZwuzaPo0oERelkPWYnrrTKa-5W&状态= ed66ea618d8076d9e72c15d9a65a6312#=

即使facebook-> getUser()返回0

这是我的代码

 '1234',
    'secret' => '12313',
    'cookie' => true
    ));
?>


      Warming Up with FB API  
     

Hello World

getLoginUrl(array ( 'display' => 'popup', 'redirect_uri' => 'http://localhost/demo' )); $user = $facebook->getUser(); //echo $user. '
'; if ($user) { echo 'User Id: '.$user; } else { $loginUrl = $facebook->getLoginUrl(array ( 'display' => 'popup', 'redirect_uri' => 'http://localhost/demo' )); echo 'Login Here '; } ?>

我知道这是一个非常微不足道的问题,但我有点坚持这个,无法继续前进.请建议做什么.

*更新*

让App Domain为空解决了我的问题.

小智.. 11

如果有人仍在敲头,这就是现在的错误.我被雇来修理这个烂摊子!

    在fb面板中检查App域,必须与您的应用所在的域匹配.

    编辑base_facebook.php找到:

    public function getAccessToken(){

    if ($this->accessToken !== null) {
      // we've done this already and cached it.  Just return.
      return $this->accessToken;
    }
    
    // first establish access token to be the application
    // access token, in case we navigate to the /oauth/access_token
    // endpoint, where SOME access token is required.
    $getApplicationAccessToken = $this->getApplicationAccessToken();
    $this->setAccessToken($getApplicationAccessToken);
    $user_access_token = $this->getUserAccessToken();
    if ($user_access_token) {
      $this->setAccessToken($user_access_token);
    }
    return $this->accessToken;
    

    }

至::

  public function getAccessToken() {

    if ($this->accessToken !== null) {
      // we've done this already and cached it.  Just return.
      return $this->accessToken;
    }

    // first establish access token to be the application
    // access token, in case we navigate to the /oauth/access_token
    // endpoint, where SOME access token is required.
    $getApplicationAccessToken = $this->getApplicationAccessToken();
    $this->setAccessToken($getApplicationAccessToken);
    $user_access_token = $this->getUserAccessToken();
    if ($user_access_token) {
      //$this->setAccessToken($user_access_token);
    $this->accessToken = $user_access_token; //edit; msolution
    }
    return $this->accessToken;
  }

    接下来找到函数:getAccessTokenFromCode()

找到这条线:

parse_str($access_token_response, $response_params); 

替换为:

//parse_str($access_token_response, $response_params); //edit:: msolution;;
$response_params = json_decode($access_token_response, true );

评论原文并添加json_decode

而已!

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有