3

好吧,我试图在新的 Facebook PHP SDK V4 上找到一些东西,看看其他人是否有问题,根据一些教程评论,Facebook 开发人员网站上有很多关于新 SDK 的投诉,但会看看这里是否有人找到一种解决方法。

所以我设置了我的新 Facebook 应用程序,就像我过去设置任何其他应用程序一样。我有我的 App ID 和 Secret,并按如下方式设置了我的 index.php 页面:-

<?php

session_start();
require_once('Facebook/FacebookSession.php');
require_once('Facebook/FacebookCanvasLoginHelper.php');
require_once('Facebook/FacebookRedirectLoginHelper.php');
require_once('Facebook/FacebookRequest.php');
require_once('Facebook/FacebookResponse.php');
require_once('Facebook/FacebookSDKException.php');
require_once('Facebook/FacebookRequestException.php');
require_once('Facebook/FacebookAuthorizationException.php');
require_once('Facebook/GraphObject.php');
require_once('Facebook/GraphUser.php');
require_once('Facebook/GraphSessionInfo.php');

use Facebook\FacebookSession;
use Facebook\FacebookCanvasLoginHelper;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\GraphUser;
use Facebook\GraphSessionInfo;

$app_id = '..........';
$app_secret = '...........';

FacebookSession::setDefaultApplication($app_id, $app_secret);

$helper = new FacebookCanvasLoginHelper();

try {
$session = $helper->getSession();
} catch (Exception $e) {
echo 'Error: '.$e->getMessage();
}

if ($session) {
//$_SESSION['token'] = $session->getToken();
echo 'Logged In!';
try {
    $request = new FacebookRequest($session, 'GET', '/me');
    $response = $request->execute();
    $graph = $response->getGraphObject();
    echo 'Hi '.$graph->getProperty('name');
} catch (FacebookRequestException $e) {
    echo $e->getMessage();
} 
}
else {
//echo '<a href="'.$helper->getLoginUrl().'">Login</a>';
$helper = new FacebookRedirectLoginHelper('https://apps.facebook.com/event-lister');
$auth_url = $helper->getLoginUrl(array('email', 'user_friends'));
echo '<script>window.top.location.href="'.$auth_url.'"></script>';
}
?>

很抱歉粘贴了所有内容,但必须确保我在 index.php 文件中包含所需的所有内容。

这会产生一个空白页面,甚至不提供登录机会。我已经按照两个教程没有成功,并且 Facebook 应用程序已经正确配置了正确的画布 URL 等......到位

请问有人能告诉我他们是否有同样的问题吗?如果有,你是如何克服这些问题的,或者这是 Facebook 知道并正忙于解决的问题?还是我哪里出错了?

4

1 回答 1

1

我在 API 上遇到过类似的问题。如果它是空白页,很可能是您的PHP. 通过将其放在正在加载的任何页面的页面顶部来启用错误报告。

<?php
     error_reporting(E_ALL);
     ini_set('display_errors', 1);
?>

此外,由于很多人在使用 FB api 登录脚本时遇到问题。我做了一个详细说明了几行代码的更改以使其启动和运行。我还包含了 V4 FBapi 的副本。只需从 github 页面上获取它并按照自述文件的说明进行操作,您将在 5 分钟内启动并运行。

点击这里

您还将找到一个进行 api 调用以获取有关用户的信息并返回到array. 您可以使用您可能需要的任何数据轻松地在此阵列上进行构建。

于 2014-07-30T04:34:18.140 回答