0

我有一个移动应用程序,它与 PHP Facebook SDK 的接口直到最近才正常。现在它只会在我让它指向我的本地主机开发服务器时登录。坦率地说,我完全被难住了。当然,我已经检查了 Facebook 开发人员中心内的网站网址。一切都指向实时服务器。然而只有开发服务器会登录。有什么建议吗?

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中更改您的应用程序设置我希望您会为 localhost 配置

于 2013-04-06T09:44:54.093 回答