Facebook Graph API:在用户页面上发布公开帖子

2 投票
1 回答
1535 浏览
提问于 2025-04-17 22:34

我正在制作一个与Facebook互动的Django网页应用。

当用户在我的网站上执行某个操作时,我想在他们的动态墙上发布一条公开的帖子。我是这样使用API的:

user.facebook_graph_api.put_object(
    'me', 'feed',
    message=my_message,
    link=my_link, 
    privacy=json.dumps(
        {'value': 'EVERYONE'}
    )
)        

但是出于某种原因,发布的帖子隐私设置为“朋友”,而不是“公开”,尽管我已经设置了{'value': 'EVERYONE'}这是为什么呢?我该如何让它的隐私设置为“公开”呢?

(最开始我怀疑是因为我用的测试用户是我自己,隐私设置为“朋友”,但我又尝试过把隐私设置改为“公开”和“仅自己可见”,结果对应用发布的帖子隐私没有影响。)

1 个回答

0

就像@therewillbesnacks说的那样……

你应用程序请求的默认隐私级别是帖子隐私的上限。

注意:隐私参数只适用于用户自己时间线上的帖子,最终由用户为应用设置的隐私上限决定。

https://developers.facebook.com/docs/reference/api/privacy-parameter/

你需要编辑你应用的默认活动隐私设置,而Facebook把这个设置藏得挺深的。下面是找到它的方法:

  1. 去你的应用列表(https://developers.facebook.com/apps?view=all_apps
  2. 点击你的应用
  3. 点击“应用详情”
  4. 向下滚动到“应用中心列出的平台”,然后点击右边的“配置应用中心权限”按钮
  5. 把“默认活动隐私”改成公开

注意,如果用户更改了这个选项,他们需要先删除你的应用再重新添加,才能把它改回公开。这也是你测试账户需要做的事情。

撰写回答