3

我想通过 Javascript 中的 Facebook Api 在我朋友的墙上发布一个帖子,但是当我在“FB.api”中插入“隐私”时,此代码无法正确运行。有人能帮我吗?谢谢你。

var privacy = {value: 'CUSTOM',  friends: 'SOME_FRIENDS', allow: '{UID}'};
var privacy2 = JSON.stringify(privacy);

FB.api("/{UID}/feed", 'post', {
    message: 'Message',
    privacy: privacy2,
    }, function(response) {
        if (!response || response.error) {
            alert(response.error);
        } else {
            alert('Message sent!');
        }
    }
);   
4

1 回答 1

3

更改隐私 JSON 以在您的密钥周围包含引号:

var privacy={"value":"CUSTOM", "friends": "SOME_FRIENDS", "allow":"{UID}"};

FB.api("/{UID}/feed", 'post', {
    message: 'Message',
    privacy: privacy,
    }, function(response) {
        if (!response || response.error) {
            alert(response.error);
        } else {
            alert('Message sent!');
        }
    }
); 

但是,您似乎无法将私人消息发布到其他用户的墙上。从Facebook 上的隐私设置页面

注意:隐私参数仅适用于用户自己时间线的帖子,最终受用户为应用程序配置的隐私上限控制。它不适用于应用程序代表用户在其他用户的时间线或主页、事件或组中发布的帖子。在这些情况下,任何可以查看群组或活动中的时间线或内容的人都可以查看此类帖子。

这似乎是您收到 OAuth 错误的原因。

于 2012-12-16T21:44:58.610 回答