将我的facebook php从本地主机移动到web服务器后,它停止工作
我在制作一个简单的FB应用程序时遇到困难 我在localhost上开发了它,它工作得非常好。整个想法是要有一个桌面应用程序,它可以启动一个带有返回url的facebook登录页面。一旦用户成功登录,他将被发送到返回url,以显示一条消息,上面写着“感谢登录” 当我在localhost上尝试时(通过将我在facebook上的应用程序域和网站url设置为localhost),它可以完美地工作。但是现在我将php迁移到Web服务器,我的$user变量永远不会被填充。(是的,我更新了应用程序域并在facebook上返回指向我的域的url。) 我开始调查并找到了我认为可能是错误的地方。在base_facebook.php上有一个getUserFromAvailableData()方法,其中包含以下部分代码:(顺便说一句,Echo是我的)将我的facebook php从本地主机移动到web服务器后,它停止工作,php,facebook,facebook-graph-api,facebook-php-sdk,access-token,Php,Facebook,Facebook Graph Api,Facebook Php Sdk,Access Token,我在制作一个简单的FB应用程序时遇到困难 我在localhost上开发了它,它工作得非常好。整个想法是要有一个桌面应用程序,它可以启动一个带有返回url的facebook登录页面。一旦用户成功登录,他将被发送到返回url,以显示一条消息,上面写着“感谢登录” 当我在localhost上尝试时(通过将我在facebook上的应用程序域和网站url设置为localhost),它可以完美地工作。但是现在我将php迁移到Web服务器,我的$user变量永远不会被填充。(是的,我更新了应用程序域并在fac
$access\u token=$this->getAccessToken();
回显“访问令牌:.$Access_Token.”
;
echo$this->getApplicationAccessToken()。“
”;
if($access\u-token&&$access\u-token!=$this->getApplicationAccessToken()&&!($user&&&$persistend\u-access\u-token==$access\u-token)){
echo“这根本不会被打印出来。”;
$user=$this->getUserFromAccessToken();
如果($user){
$this->setPersistentData('user\u id',$user);
}否则{
$this->clearAllPersistentData();
}
}
返回$user;
如您所见,有一个永远不会被打印的回音,我设法发现getAccessToken和getApplicationAccessToken返回完全相同的字符串,这就是为什么我的$user为空
所以我的问题是:为什么这在本地主机上有效,而在我的Web服务器上无效?我做错了什么
谢谢 如果你想在真正的服务器上使用你的代码,你需要用你的域名制作一个Facebook应用程序,你将使用它来托管tour php脚本,并将你的应用程序Id和应用程序机密放入:
$config = array();
$config['appId'] = 'YOUR_APP_ID';
$config['secret'] = 'YOUR_APP_SECRET';
$facebook = new Facebook($config);
希望这会有所帮助我想您已经将配置设置为本地,而不是在直播阶段。@DrixsonOseña您是什么意思?php目前在一个开发服务器上,但我还不能让它工作。在localhost上,它工作得完美无缺。不是PHP配置,我还不熟悉API,但仔细检查了重要的配置,尤其是那些您在系统中使用的路径。如果这需要您的代币工作,谢谢@mrmm,但我已经完成了所有这些。我的应用程序正在运行,它连接到fb,我得到了用户令牌和所有东西。问题是,在localhost上开发时,所有这些都很好,但当我将其上传到Web服务器并更改facebook应用程序的域以匹配新域和所有内容时,它就停止工作了。@PituSeligmann我也有同样的问题。我需要为这个问题做些什么?。
$config = array();
$config['appId'] = 'YOUR_APP_ID';
$config['secret'] = 'YOUR_APP_SECRET';
$facebook = new Facebook($config);