【问题标题】:Facebook Error 100: You cannot specify a scheduled publish time on a published postFacebook 错误 100:您无法在已发布的帖子上指定预定的发布时间
【发布时间】:2014-05-25 00:23:18
【问题描述】:

我只需要这样做。 绝对是我查找有关此问题的每个问题,但他们的答案都没有帮助我解决它。

我正在尝试在我的 Facebook 页面上发帖。

问题来了:

错误: "(#100) 您不能在已发布的帖子上指定预定的发布时间"

代码:

FB.api(
    "/100177680105780/feed",
    "POST",
    {

        "message": "This is a test message",
        "scheduled_publish_time": Math.round(new Date().getTime() / 1000) + 120

    },
    function (response) {
        console.log(response);
        if (response && !response.error) {
            /* handle the result */
        }
    });

我不知道为什么这会给我这个错误。即使我在帖子内容周围添加“对象”:{},它也不起作用。我尝试更改 UNIX 时间戳,我尝试更改消息,我尝试设置 "published": false 并且没有运气。

任何指导都会很棒。

【问题讨论】:

    标签: javascript facebook api facebook-graph-api facebook-javascript-sdk


    【解决方案1】:

    "published": false 应设置为发布预定的帖子。如果你在设置这个参数后仔细看到错误,它说:

    (#200) 未发布的帖子必须作为页面本身发布到页面。

    只能使用页面访问令牌发布已安排的帖子 - 足够合乎逻辑,因为有权管理页面的人可以安排帖子。

    此外,使用您的代码(您使用的是普通用户访问令牌),帖子会以您自己的身份发布,而不是代表页面。这些帖子在侧栏上可见,而不是在主墙上——这不是你要找的,对吧? :)

    所以,请使用页面访问令牌。要获取页面访问令牌,请先获取具有manage_pages 权限的新用户令牌并进行调用-

    \GET /{page-id}?fields=access_token
    

    使用此令牌并进行调用以安排发布-

    FB.api(
    "/{page-id}/feed",
    "POST",
    {
        "message": "This is a test message",
        "scheduled_publish_time": Math.round(new Date().getTime() / 1000) + 120,
        "published": false,
        "access_token": "{page-access-token}"
    },
    function (response) {
        console.log(response);
        if (response && !response.error) {
            /* handle the result */
        }
    });
    

    我不确定您的应用程序究竟做了什么,但如果获取永不过期的页面访问令牌对您有帮助,您可以在此处查看我的answer

    希望有帮助!

    编辑:

    正如@Tobi 所提到的,还要确保 UNIX 时间戳在发布后 10 分钟到 6 个月之间。由于您使用的是 2 分钟,这也可能会产生问题。

    【讨论】:

    • 当照片是预定帖子的一部分时,必须包含已发布、预定发布时间和未发布内容类型参数。
    • @VansuitaJr。是的,但对于照片,您将使用不同的端点 - /photos
    【解决方案2】:

    https://developers.facebook.com/docs/graph-api/common-scenarios#scheduledposts 的文档说scheduled_publish_time

    应该是介于 10 分钟和 6 分钟之间的 UNIX 时间戳 自发布之日起几个月

    由于您只增加了 120 秒,我想这可能是它不起作用的原因。尝试添加至少 600 秒并再次测试。

    https://developers.facebook.com/docs/graph-api/reference/page/feed/#pubfields 也这么说。

    正如@Sahil 提到的,您还需要使用页面访问令牌,需要按照他的描述手动设置。

    【讨论】:

    • 即使这样也行不通,因为她正在使用用户访问权限 - 不允许计划发布
    • 你是对的,但是将发布时间设置为提前 2 分钟也不行...
    • 加上一个必须添加的时间间隔 [10 分钟到 6 个月]!
    • +1,发布时间必须大于10分钟。来自 facebook 的错误消息具有误导性。我以为我的令牌有问题...
    • 我们如何知道调度程序帖子是否已发布?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-01
    • 2013-01-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多