更新脸书主页帖子已发布字段

本文关键字:布字段 字段 主页 更新 | 更新日期: 2023-09-27 18:32:26

我正在开发一个应用程序,该应用程序(其中的一部分)将管理用户的页面及其帖子。用户可以创建帖子并选择是否发布帖子。我可以创建帖子并将"已发布"字段完美地设置为 true 或 false。问题是:当我尝试通过 http POST 请求将帖子的"is_published"字段从 false 设置为 true 时。视频 a 和链接类型的帖子工作完美,但状态和照片不起作用。可能有什么问题?

    public dynamic PublishPost(string postId)
    {
        dynamic parameters = new ExpandoObject();
        parameters.is_published = 1;
        try
        {
            return FacebookClient.Post(string.Format("/{0}", postId), parameters);
        }
        catch (Exception e)
        {
            return null;
        }
    }

更新脸书主页帖子已发布字段

可以使用创建帖子时返回的帖子 ID 更新未发布/定时发布的帖子。我们支持对此类帖子进行两种类型的更新:

  • 发布以前未发布的帖子。 (取消发布帖子不是支持)
  • 更改计划(即重新计划,将计划添加到未发布的帖子,从帖子中删除时间表,从而使它未发表。

要将现有帖子从未发布更新为已发布,只需通过 API 调用将 is_published 参数设置为true

参考: https://developers.facebook.com/docs/reference/api/page/#unpub_scheduled_posts


帖子的参数是published参考:照片页面帖子https://developers.facebook.com/docs/reference/ads-api/unpublished-page-posts/

curl -F 'message=Book your trip to Alaska, http://bit.ly/alaska''
     -F 'source=@alaska.jpg''
     -F 'published=0''
     -F 'access_token=PAGE_TOKEN''
  https://graph.facebook.com/{page_id}/photos

尝试:

public dynamic PublishPost(string postId)
{
    dynamic parameters = new ExpandoObject();
    parameters.is_published = "true";
    try
    {
        return FacebookClient.Post(string.Format("/{0}", postId), parameters);
    }
    catch (Exception e)
    {
        return null;
    }
}