Php 获取facebook喜欢的信息-奇怪的问题
我开发了一些facebook应用程序(用php编写),只有用户喜欢某个fanpage时才允许使用它 直到今天,当我收到一些用户关于阻止访问应用程序的反馈时,一切都很好 看起来应用程序不允许他们进入,因为他们不喜欢这个扇形页面,但关键是那些用户已经喜欢这个扇形页面了(我测试了很多次) 我正在检查用户是否喜欢带有标准图形请求的扇形页面,如Php 获取facebook喜欢的信息-奇怪的问题,php,facebook,facebook-graph-api,facebook-javascript-sdk,facebook-access-token,Php,Facebook,Facebook Graph Api,Facebook Javascript Sdk,Facebook Access Token,我开发了一些facebook应用程序(用php编写),只有用户喜欢某个fanpage时才允许使用它 直到今天,当我收到一些用户关于阻止访问应用程序的反馈时,一切都很好 看起来应用程序不允许他们进入,因为他们不喜欢这个扇形页面,但关键是那些用户已经喜欢这个扇形页面了(我测试了很多次) 我正在检查用户是否喜欢带有标准图形请求的扇形页面,如/user\u ID/likes?target\u ID=PAGE\u ID 如果用户喜欢该页面,则返回一些数组;如果用户不喜欢,则返回空数组。在我的例子中,对于那
/user\u ID/likes?target\u ID=PAGE\u ID
如果用户喜欢该页面,则返回一些数组;如果用户不喜欢,则返回空数组。在我的例子中,对于那些用户来说,它总是空数组
我还检查了/USER\u ID/likes
-查看了所有用户的喜好列表,对于普通用户,我得到了他们喜欢的页面json数组的响应,如果是“有缺陷”的用户,我再次得到了空数组
我在phpsdk中使用PHP,所以所有请求都是通过$facebook->api(…)
我现在有两个用户有这个问题,其他人都很好
我不确定我是做错了什么,还是facebook的一些bug
我很高兴听到任何有脸书api经验的人的意见
提前感谢。问题可能是用户未授权应用程序访问用户信息。您可以使用来自facebookapi的签名请求来查看用户是否喜欢该页面,这将更加可靠
require 'facebook.php';
$app_id = "app_id";
$app_secret = "app_secret";
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
$signed_request = $facebook->getSignedRequest();
if($signed_request["page"]["liked"] != 1) {
// Render the blocker page
}else{
// Business as usual
}
如果我错了,请显示一些codeCorrect me,但我认为当用户喜欢应用程序而不是fanpage时,
$signed\u请求[“page”][“liked”]
返回true。我需要检查他是否喜欢指定的fanpage而不是应用程序。该变量用于fanpage,而不是应用程序本身。