Facebook错误100:您无法在已发布的帖子上指定计划发布时间

Tif*_*owe 5 javascript api facebook facebook-graph-api facebook-javascript-sdk

我只是必须这样做.绝对是每个问题我都会查询有关此问题的问题,但他们的答案都没有帮助我解决问题.

我想在我的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 */
        }
    });
Run Code Online (Sandbox Code Playgroud)

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

任何指导都会很棒.

Tob*_*obi 8

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

应该是一个UNIX时间戳,距离发布时间为10分钟到6个月

由于你只增加了120秒,我想这可能是它无法正常工作的原因.尝试添加至少600秒并再次测试.

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

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


Sah*_*tal 8

"published": false应设置以发布预定的帖子.如果在设置此参数后仔细查看错误,则会显示:

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

计划的帖子只能使用页面访问令牌发布 - 逻辑性足够,因为那些有权管理页面的人可以安排帖子.

此外,使用您的代码(您使用普通用户访问令牌),帖子将作为您自己而不是代表页面发布.这些帖子在侧栏上可见而不是在主墙上 - 这不是你想要的吗?:)

因此,请使用页面访问令牌.要获取页面访问令牌,请首先获得新用户令牌manage_pages并进行调用 -

\GET /{page-id}?fields=access_token
Run Code Online (Sandbox Code Playgroud)

使用此令牌并拨打电话以安排后

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 */
    }
});
Run Code Online (Sandbox Code Playgroud)

我不确定你的应用程序究竟是做什么的,但是如果获得一个永不过期的页面访问令牌可以帮助你,你可以在这里看到我的答案.

希望有所帮助!

编辑:

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