访问禁止的Facebook登录

时间:2015-04-25 12:09:34

标签: php facebook codeigniter login

我有问题。我目前正在开发一个php项目,我实现了一个facebook-login系统。我将用户重定向到本地主机上的文件。但是,当我尝试登录时,我收到此错误:

您无权访问此服务器上的/rent-a-Student/codeigniter/application/views/users/User_view.php。

在控制台中我看到:

GET http://localhost/rent-a-Student/codeigniter/application/views/users/User_vi ... WK9-EQOdn475FhwznNhICtrlSMqO6t3c7qp& state = 3beb2184e0ca8bf17289be263cc83ddf 403(Forbidden)

这是我的login_fb文件:

<?php
// start session
session_start();

// loading facebook srcfiles
require_once 'autoload.php';

use Facebook\FacebookSession;
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\Entities\AccessToken;
use Facebook\HttpClients\FacebookCurlHttpClient;
use Facebook\HttpClients\FacebookHttpable;

// initialise app, helper and get session
$app_id = '480209908792754';
$app_secret = '86e572d72f8720363b0c01552953e064';
FacebookSession::setDefaultApplication($app_id, $app_secret);

$helper = new FacebookRedirectLoginHelper('http://localhost/rent-a-Student/codeigniter/application/views/users/User_view.php');
$session = $helper->getSessionFromRedirect();

// if session exists ,get user info
if(isset($session)) {
    $request = new FacebookRequest( $session, 'GET', '/me' );
    $response = $request->execute();
    $graph = $response->getGraphObject();

    $_SESSION['id']= $graph->getProperty('id');
    $_SESSION['name']= $graph->getProperty('name');
    $_SESSION['email']= $graph->getProperty('email');

    header("Location: ../views/users/User_view.php"); 
} else {
    $loginUrl = $helper->getLoginUrl();
    header("Location: ".$loginUrl);
}

在Facebook开发者网站上,我将所有内容都链接正确(我认为)。 我希望你们可以帮助我。

1 个答案:

答案 0 :(得分:0)

永远不会看到错误消息。但我测试了代码并看到facebook重定向到正确的url(虽然我的计算机中不存在),所以问题应该由codeigniter url重定向机制引起。