Facebook JS SDK:在页面上创建活动(不是个人资料)

时间:2011-08-08 09:04:50

标签: javascript facebook sdk

我正在使用Facebook的JavaScript SDK来执行类似

的操作
FB.api('/1234567890/events', 'POST', {
    name: "My cute test event",
    start_time: 1313161200,
    end_time: 1313531700,
    location: "Over the Rainbow"
}, function (res) {
    // whatever
});

在Facebook页面上创建活动。经过身份验证的用户是该页面的管理员1234567890,并授予manage_pagescreate_event权限。

但是,创建的事件不属于该页面,而是创建为经过身份验证的用户的事件,因此仅显示在其朋友的流中,但不会显示在指定的页面上。

我该如何解决?

我知道有/me/accounts API调用返回访问令牌代表用户页面进行API调用,但我没有看到Facebook的JavaScript SDK中我可以实际更改访问令牌。

(是的,我知道使用Unix时间戳创建事件很糟糕。我也会解决这个问题,但我想这与此问题没有任何关系。)

1 个答案:

答案 0 :(得分:0)

感谢 Vijay 让我指向正确的方向(不是在答案中):

您可以通过将access_token添加到您传递给POST的对象来设置FB.api('/1234567890/events', 'POST', { access_token: "152770078124166|2.AQBX…", name: "My cute test event", start_time: 1313161200, end_time: 1313531700, location: "Over the Rainbow" }, function (res) { // whatever }); ,例如:

access_token

然后将access_token添加到URL的末尾不起作用,因为SDK将为Facebook提供自定义令牌(作为查询字符串参数)及其默认令牌(作为POST参数) ,Facebook似乎更喜欢POST {{1}}(或者随机选择它们,这差别很大)。