所以也許文檔已過時,或者我剛剛在這裏。但我已經完成了一堆FB iframe應用程序(連接),但是我開始了我的第一個FB Connect站點。從本地主機運行它,並且連接URL是http:// my_external_IP_address
。當我點擊我的網站上的FB登錄按鈕時,它會彈出,等待Facebook,然後它返回我的網站,URL爲http:// mysite/?session={session key, user_id, etc.}
。user_id實際上是我的FB ID。所以它認爲我已登錄。如果關閉彈出窗口,我沒有登錄。我不確定彈出窗口爲什麼沒有執行正常的fb連接對話框。我正在執行這些步驟。Facebook從本地連接,做一些奇怪的東西
(我加空格的http://爲不爲 '垃圾郵件' 被檢測)
html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml"
<body> <script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript">
- 在結束之後,人體接近標記之前:
script type="text/javascript"> FB.init("fbkey", "http://127.0.0.1/xd_receiver.htm");
我已經嘗試使用xd_receiver.htm
,/xd_receiver.htm
(和其他組合),並提出了一個空白頁。使用http://127.0.0.1至少可以做點什麼。
在我的配置文件,這是所有那些之前被調用,它會檢查一個PHP會話密鑰 ,看看他們是否已經登錄,如果它不存在,尋找一個cookie,如果該不存在它這樣做:
require_once('includes/facebook.php');
$facebook = new Facebook($fbkey, $fbsec);
$user_id = $facebook->get_loggedin_user();
if($user_id > 0){
$user = $ac->getUserFromFB($user_id);
$_SESSION['user_id'] = $user['user_id'];
}
當我將它回顯到屏幕以測試時,user_id始終爲空。會話事件也不會發生。所以我不知道它在彈出窗口中做了什麼,但我認爲Facebook認爲它正在登錄。不確定。漂亮的難住這一個。任何幫助,將不勝感激。謝謝!
我試圖從FB.init()中刪除xd_receiver文本,將127.0.0.1更改爲我的外部IP(雖然,這只是FB.init JS函數的一個參考,所以我認爲本地很好),並且我將featureloader移到了head標籤中。並嘗試了三個組合沒有成功。仍彈出我的網站。感謝您的幫助。 – Brett 2010-01-07 01:46:43