1

我已经开发了一些 facebook 应用程序(用 php 编写),它应该只允许用户在他们喜欢某些粉丝页面时使用它。

直到今天,当我收到用户关于阻止访问该应用程序的一些反馈时,一切都运行良好。

看起来应用程序不让他们进入是因为他们不喜欢粉丝专页,但关键是那些用户已经喜欢那个粉丝专页(我测试了很多次)。

我正在检查用户是否喜欢带有标准图形请求的粉丝页面,例如/USER_ID/likes?target_id=PAGE_ID

如果用户喜欢该页面,这主要返回一些数组,如果他不喜欢,则返回空数组。在我的情况下,对于那些用户来说,它总是空数组。

我还检查/USER_ID/likes了所有用户喜欢的列表,对于普通用户,我得到了他们喜欢的 json 页面数组的响应,以防“窃听”用户我再次得到空数组。

我在 phpsdk 中使用 PHP,所以所有请求都是用$facebook->api(...)

我现在有 2 个用户遇到这个问题,其他人都很好。

我不确定我是否做错了什么,或者它是一些 facebook 错误。

我很高兴听到任何有 facebook api 经验的人的意见。

提前致谢。

4

1 回答 1

0

问题可能来自用户未授权应用访问用户信息。您可以使用来自 Facebook API 的签名请求来查看用户是否喜欢该页面,这将更加可靠。

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
}
于 2013-07-01T16:34:17.780 回答