3

我能够使用这个 POST 请求通过我的 Facebook 应用程序中的图形 api 创建 facebook 事件:

POST https://graph.facebook.com/<MY_APP_ID>/events?
      start_time=2013-12-21T19%3A30%3A00
     &end_time=2013-1221T20%3A30%3A00
     &name=test+event
     &access_token=<MY_APP_ACCESS_TOKEN>

响应是 JSON,带有新创建事件的 id。

在此之后,我尝试创建另一个具有“秘密”隐私的事件:

POST https://graph.facebook.com/<MY_APP_ID>/events?
      start_time=2013-12-21T19%3A30%3A00
     &end_time=2013-1221T20%3A30%3A00
     &name=test+secret+event
     &privacy_type=SECRET
     &access_token=<MY_APP_ACCESS_TOKEN>

这里的响应也是一个带有创建事件 id 的 JSON。

之后,我尝试列出我的应用程序的事件:

 GET https://graph.facebook.com/<MY_APP_ID>/events/?access_token=<MY_APP_ACCESS_TOKEN>

在响应 JSON 中,我只能看到一个非秘密事件。那个秘密不见了。

在此之后,我试图一一获取事件的详细信息:

 GET https://graph.facebook.com/<EVENT_ID>/?access_token=<MY_APP_ACCESS_TOKEN>

在使用非秘密事件的 id 的情况下,响应包含该事件的所有详细信息,但是当我使用秘密事件的 id 时,它会以错误消息响应:

{
  "error": {
    "message": "Unsupported get request.", 
    "type": "GraphMethodException", 
    "code": 100
  }
}

为什么我无法使用我的应用创建秘密(仅限邀请)事件?

4

3 回答 3

3

根据 Graph API事件页面,可以通过 Graph API 为三种对象类型创建事件:用户、页面和应用程序:

User、Page 和 Application 对象具有事件连接。

但是,Graph API 事件页面仅提供有关如何创建事件的用户和页面部分的链接(请参阅图 API 事件页面,创建事件部分)。没有进一步提到应用程序事件,应用程序部分也没有提到事件连接。

在两种链接到的事件类型中,仅支持用户privacy_type使用参数创建事件,而不支持页面:

创建用户事件支持的参数

名称、开始时间、结束时间、描述、位置、位置 ID、隐私类型

资料来源:Facebook Developers 上的用户图 API 详细信息

创建页面事件支持的参数:

名称、开始时间、结束时间、描述、位置、位置 ID

来源:Facebook Developers 上的 Page Graph API 详细信息

所以我的猜测是应用程序遵循页面事件连接参数,但这没有正确记录。

于 2012-12-21T16:33:03.203 回答
1

If you created it as SECRET, you won't be able to retrieve that event using the app access token, because your app is not a user, and cannot see the event.

It's only visible to the user who created it and the other attendees - the user's access token should return the event, because the user access token acts with the same permissions as the user, and if they're marked as attending the event, they can see it

于 2012-12-21T22:19:33.440 回答
0

我想,您应该使用以下方法之一:

GET /EVENT_ID/invited/USER_ID
GET /EVENT_ID/attending/USER_ID
GET /EVENT_ID/maybe/USER_ID
GET /EVENT_ID/noreply/USER_ID
GET /EVENT_ID/declined/USER_ID

或者看看这个:

http://developers.facebook.com/docs/reference/api/event/

于 2012-12-21T15:46:48.423 回答