我相信我已经阅读了几乎所有(如果不是全部)相关帖子,但我仍然找不到答案。
在客户端,我让用户登录并将用户ID和访问令牌发送到服务器。然后服务器使用facebook->getUser()
来检查发送的用户ID是否真的属于他,如果是,我将他添加到我的数据库中并注册他。类似于这个问题
Facebook Login:如何将JavaScript与PHP SDK相结合?
除了facebook->getUser()
继续返回 0。我也看过很多与此相关的问题,但我就是找不到答案。客户端没有问题,用户可以登录并授予权限,它会生成正确的用户ID和令牌。
我目前正在使用本地主机来测试所有内容。
.php:
<?php
require 'facebook/src/facebook.php';
$uid = $_POST['userid'];
$token = $_POST['accessToken'];
$facebook = new Facebook(array(
'appId' => 'XXXXXXXXXXXXXXXXX',
'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXX',
));
// Get User ID
$user = $facebook->getUser();
if($user==$uid){
//codes here
我的问题类似于以下帖子,但没有得到任何答案Facebook API:使用 JavaScript SDK 登录,然后使用 PHP 检查登录状态
附加信息:我也想使用 PHP sdk 的原因是,我不希望人们使用别人的 fb userID 向我的服务器发送请求"假装"成另一个人
您从FB Javascript SDK收到FB Token。您是否首先使用从Javascript收到的令牌在PHP中设置FB令牌?
$facebook->setAccessToken($new_access_token);
在打电话之前?
$facebook->getUser()