Facebook Graph API覆盖显式设置隐私设置

时间:2011-08-29 01:48:13

标签: php facebook facebook-graph-api

我在代表用户为我的应用创建的帖子设置隐私时遇到问题。

问题在于所有帖子都通过Graph API将其隐私值设置为ALL_FRIENDS,即使我明确地将隐私值设置为EVERYONE。

这是我用来提交的代码:

$query = 'message='. urlencode($message) .'&privacy='. urlencode('{"value":"EVERYONE"}');
$url = 'https://graph.facebook.com/'. $obj_id .'/feed?access_token='. $user_fb_access_token;

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $query);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($curl, CURLOPT_REFERER, $referrer);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

$data = curl_exec($curl);

curl_close($curl);

多数民众赞成。

这段代码完美无缺,直到八月的某个时候才注意到它。

其他人有这个问题吗?

3 个答案:

答案 0 :(得分:7)

这与新的每个应用后隐私控制有关,如果设置为好友,那么此应用只能将隐私设置为与朋友一样广泛。

请阅读以下博文,了解更多信息:https://developers.facebook.com/blog/post/543/

答案 1 :(得分:1)

在您的示例中,您正在创建评论,而不是帖子。注释不支持privacy = {}参数。

答案 2 :(得分:0)

这不是他们的图表API文档,但他们本月在UI中将“所有人”更改为“公开”,以尝试向用户说明“每个人”的含义...

尝试使用'{"value":"PUBLIC"}'并查看它是否有效。