我正在嘗試使用codeigniter連接Facebook。如果我連接拳頭時間,那麼我可以看到權限彈出,但在我授權許可後,我得到多個重定向循環錯誤。Facebook登錄後在循環中使用codeigniter重定向
如果我已經登錄和授權的網站,那麼爲什麼它沒有得到uid。
我給網站的URL在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();
}
@Theshift ..首先感謝您的回答。關於錯字,這些只是錯誤,因爲我修改了一些代碼以使讀者更容易。所以我改變了重定向url,api和密鑰,原始代碼沒有錯字。因此第1和第4點不存在。我試過你第二點,但同樣的重定向。並且你的第四點的答案是肯定的我設置路線。 http://site.com/auth/facebook至site.com/facebook。 – Emmul
只需確認您在活網站上嘗試此操作而不是「本地主機」? – Laurence