簡體   English   中英

登錄后Facebook與codeigniter連接重定向循環

[英]Facebook connect with codeigniter redirect in loop after login

我正在嘗試使用Codeigniter連接Facebook。 如果我在第一時間連接,那么我可以看到權限彈出窗口,但是在我授權權限后,我得到了多個重定向循環錯誤。

如果我已經登錄並獲得授權,那么為什么它沒有獲取uid。

我在Facebook中提供了網站網址: http//mysite.com/

而我的重定向uri是http://mysite.com/facebook/

我已將這些文件添加到庫文件夾中。

library/fb_connect.php
library/facebook/facebook.php
library/facebook/base_facebook.php
library/facebook/fb_ca_chain_bundel.crt

facebook文件夾中的最后3個文件是facebook SDK文件。

這是我的fb_connect.php中的代碼

<?php
include(APPPATH.'libraries/facebook/facebook.php');

 class Fb_connect {


function connect(){


$facebook = new Facebook(array(
    'appId'  => 'XXXXXXX',
    'secret' => 'XXXXXXXXXXXXXX',
    'cookie' => true,
 ));

    //Get User ID
  $user=$facebook->getUser();

  if(!$user){
   $loginUrl=$facebook->getLoginUrl(array(
    'scope'         => 'email,publish_stream,user_birthday,user_location',
    'redirect_uri'  => 'http://localhost/beta/facebook/',
    'display'=> 'popup'
    ));

    redirect($loginUrl')";
    exit();


 } else {
$user_profile = $facebook->api('/me');

 print_r($user_profile);

}
 ?>

這是我的控制器代碼:

function  facebook(){

  $this->load->library('fb_connect');
  $user_data=$this->fb_connect->connect();

 }

有幾件事;

1.您說“我的重定向uri是http://mysite.com/facebook/”-但是在您的代碼中:

'redirect_uri'  => 'http://localhost/beta/facebook/',

應該:

'redirect_uri'  => 'http://mysite.com/facebook/',

2.您說“我在Facebook中提供了網站網址: http : //mysite.com/ ”-您還需要在您的facebook api中專門設置返回網址-應該為“ http://mysite.com/facebook”

3.您說您的重定向是“ http://mysite.com/facebook/”-您是否將此設置為路由? 因為通常它應該是“ http://mysite.com/mycontroller/facebook/”

4.您有錯別字(如果這是副本+粘貼):

redirect($loginUrl')";

應該

redirect($loginUrl);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM