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>

応答は、新しく作成されたイベントのIDを持つJSONでした。

この後、私は「秘密」のプライバシーで他のイベントを作成しようとしました:

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では、秘密ではないイベントを1つだけ見ることができます。秘密のものがありません。

この後、私はイベントの詳細を1つずつ取得しようとしました:

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

非シークレットイベントのIDを使用する場合、応答にはそのイベントのすべての詳細が含まれますが、シークレットイベントのIDを使用すると、エラーメッセージで応答します。

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

アプリでSECRET(招待のみ)イベントを作成できないのはなぜですか?

4

3 に答える 3

3

グラフAPIのイベントページに従って、グラフAPIを介して、ユーザー、ページ、アプリケーションの3つのオブジェクトタイプのイベントを作成できます。

User、Page、およびApplicationオブジェクトには、イベント接続があります。

ただし、Graph APIイベントページは、イベントの作成方法に関するユーザーセクションとページセクションへのリンクのみを提供します(Graph APIイベントページのセクションイベントの作成を参照)。アプリケーションイベントへのこれ以上の参照はなく、アプリケーションセクションではイベント接続については言及されていません。

リンクされた2つのイベントタイプのうち、privacy_typeパラメータを使用したイベントの作成は、ページではなくユーザーに対してのみサポートされます。

ユーザーイベントを作成するためにサポートされているパラメーター

名前、start_time、end_time、description、location、location_id、privacy_type

出典:Facebook開発者のユーザーグラフAPIの詳細

ページイベントを作成するためにサポートされるパラメーター:

名前、start_time、end_time、description、location、location_id

出典:Facebook開発者のページグラフAPIの詳細

したがって、アプリケーションはページイベント接続パラメータに従いますが、これは適切に文書化されていないと思います。

于 2012-12-21T16:33:03.203 に答える
1

として作成した場合SECRET、アプリはユーザーではなく、イベントを表示できないため、アプリアクセストークンを使用してそのイベントを取得することはできません。

これは、それを作成したユーザーと他の参加者にのみ表示されます。ユーザーアクセストークンはユーザーと同じ権限で動作するため、ユーザーのアクセストークンはイベントを返す必要があり、イベントへの参加としてマークされている場合は、次のことができます。見てください

于 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 に答える