0

私は、最近まで PHP Facebook SDK とうまくやり取りしていたモバイルアプリを持っています。これで、localhost 開発サーバーを指している場合にのみサインインします。率直に言って、私は完全に困惑しています。もちろん、Facebook デベロッパー センター内のサイト URL を確認しました。すべてがライブサーバーを指しています。それでも、開発サーバーのみがサインインします。何か提案はありますか?

These domains work:
http://localhost:8888
http://testsite2:8888

These domains will not work:
http://*.com
https://*.com

リクエストに応じて、ここに私のFacebookコードがあります:

$config = array();
$config['appId'] = Configure::read('FB_APP_ID');
$config['secret'] = Configure::read('FB_APP_SECRET');
$config['fileUpload'] = false; // optional
$facebook = new Facebook($config);      
$facebook->setAccessToken($this->data['User']['fbtoken']);
$receivedfbid = $facebook->getUser();

これは私の開発サーバーで正しく機能し、最近までライブサーバーで正常に機能していました。繰り返しますが、Facebook デベロッパー センターは、ライブ サーバーへの「サイト URL」用に構成されています。それは問題ではありません。

ここに画像の説明を入力

4

2 に答える 2

0

Webhost の Web アプリでも同じ問題が発生しましたが、localhost では問題なく動作しました。

私の場合は、cURL と ssl に関連していました。

SSL の問題であるかどうかを確認する簡単な方法は、fb php sdk に SSL 証明書を受け入れるように指示することです。これを行うには、これを base_facebook.php ファイルに追加します。

$opts[CURLOPT_SSL_VERIFYPEER] = false; 
   curl_setopt_array($ch, $opts);

直前に置く$result = curl_exec($ch);

非 SSL 接続でテストしたとおっしゃっていましたが、base_facebook.php ファイルはまだ ssl 証明書を探しています。
詳細については、http: //unitstep.net/blog/2009/05/05/using-curl-in-php-to-access-https-ssltls-protected-sites/を参照してください。

于 2013-10-13T13:32:45.680 に答える
-1

developer.facebook.comでアプリの設定を変更してください。

于 2013-04-06T09:44:54.093 に答える