通过具有特定日期的Open Graph将对象发布到Facebook,但日期不起作用

时间:2011-12-06 03:09:49

标签: facebook date facebook-graph-api opengraph facebook-opengraph

我从我的应用程序发布到用户的Facebook时间轴,并且在日期方面遇到了一些麻烦。用户正在从我的应用程序发布到Facebook的帖子。他们发布的对象是过去几天发生的事件。

这是发布请求:

RestClient.post "https://graph.facebook.com/me/app:action", :access_token=>access_token_here, :object=>object_url, :tags => some_tags, :start_time =>"2011-11-08T04:00:00Z", :end_time => "2011-11-08T05:00:00Z"

在我为自己的Facebook帐户执行此操作后,该活动会在Facebook活动日志中显示当前日期,而不是start_time指定的日期。

我也尝试过使用纪元时间,但没有区别:

RestClient.post "https://graph.facebook.com/me/app:action", :access_token=>access_token_here, :object=>object_url, :tags => some_tags, :start_time =>"1320724800", :end_time => "1320728400"

我做错了什么?

3 个答案:

答案 0 :(得分:0)

您是否尝试过以不同格式编写日期,尤其是这一个:

:start_time =>"2011-11-08 04:00:00"

我正在使用这种格式向Facebook发布日期,并且它按预期工作,没有时区问题。

答案 1 :(得分:0)

你是否也尝试过没有时区信息(没有Z)?
这是适用于我的代码(javascript):

function postRestaurant() {
    FB.api('me/MY_APP_NAMESPACE:have_lunch?\
    start_time=2000-12-12T04:00:00&\
    expires_in=7200&\
    restaurant=' + OBJECT_URI), 'post', function (response) {
        if (!response || response.error) {
            console.log('postRestaurant: Error occured => ' + response.error.message);
        } else {
            console.log('postRestaurant: Post was successful! Action ID: ' + response.id);
        }
    });
}

答案 2 :(得分:0)

我们遇到的问题是FB忽略了结束时间并将所有操作都作为过去时而不是将来发布。

这已被提出作为一个错误。作为一种解决方法,我们将动词设置为两者的未来时态......现在。