【问题标题】:Facebook PHP SDK v4 return blank page on server but working in localhostFacebook PHP SDK v4 在服务器上返回空白页面,但在 localhost 中工作
【发布时间】:2015-06-03 12:19:13
【问题描述】:

在 localhost 中一切正常,但在服务器上无法正常工作。 (显示 Chrome 的空白页,并在 IE 中显示 HTTP 500 内部服务器错误。我试图通过在 php 文件顶部添加代码来获取错误日志,但未能获取日志但为空白页)

error_reporting(E_ALL);
ini_set("display_errors", 1); 

服务器运行 PHP 5.5,启用了 CURL SSL。我尝试在 facebook 设置中将服务器 IP 设置为白名单,但效果不佳。服务器中的 Facebook id 和密码正确。

我正在使用 Facebook Javascript SDK 获取用户访问令牌

FB.login(function(response) {
            if (response.authResponse) {
                var access_token = response.authResponse.accessToken;

然后通过 AJAX 传递给 facebook.php 以检查和获取用户配置文件

$.ajax({
    type: "POST",
    url: "facebook.php",
    data: 'access_token='+access_token

facebook.php

require 'FB_php_sdk_v4/autoload.php';

use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphUser;
use Facebook\FacebookRequestException;

FacebookSession::setDefaultApplication('app_id', 'app_secret');
$session = new FacebookSession($_POST['access_token']);

// get GraphUser info by Facebook API
try {
  $me = (new FacebookRequest(
    $session, 'GET', '/me'
  ))->execute()->getGraphObject(GraphUser::className());
  $first_name = $me->getFirstName();
  $uid = $me->getId();
} catch (FacebookRequestException $e) {
  $code = $e->getCode();
  $error_msg = $e->getMessage();
  echo $code.$error_msg;
}

我尝试了不同的场景,发现当 FacebookRequest 执行时,页面会变成空白。

$me = (new FacebookRequest(
        $session, 'GET', '/me'
      ))->execute()->

我在这里被困了几天>

【问题讨论】:

  • 有人知道为什么我不能在实时服务器中发出 FacebookRequest 吗?

标签: php server facebook-php-sdk


【解决方案1】:

我找到了根本原因。

错误无法显示,因为我把它隐藏在一些代码中,所以将错误显示代码放在那些错误隐藏代码之后,发现错误。

error_reporting(E_ALL);
ini_set("display_errors", 1); 

错误是

Fatal error: Call to undefined function Facebook\mb_substr() in /xxx/facebook/php-sdk-v4/src/Facebook/FacebookCurlHttpClient.php on line 253

然后按照solution ,只需在服务器中启用mbstring,问题就解决了!

希望这可以帮助遇到类似问题的人。

谢谢!

【讨论】:

    【解决方案2】:

    我认为它不见了

    $helper = new FacebookRedirectLoginHelper(URL_REDIRECT);
    

    参考: https://www.webniraj.com/2014/05/01/facebook-api-php-sdk-updated-to-v4-0-0/

    【讨论】:

      猜你喜欢
      • 2017-08-10
      • 1970-01-01
      • 1970-01-01
      • 2020-05-12
      • 2019-12-19
      • 2018-08-04
      • 1970-01-01
      • 1970-01-01
      • 2013-03-30
      相关资源
      最近更新 更多