0

カレンダー ID からカレンダー名を取得する必要があります。正しい Google カレンダー ID を指定し、API を介して送信して、カレンダーの詳細を取得し、カレンダー名を取得しました。

    https://www.googleapis.com/calendar/v3/calendars/en.indian#holiday@group.v.calendar.google.com

    Method type: GET
    Content-Type: application/json
    Authorization: Bearer <latest access_token>

オンラインの Google Calendar API で確認しましたが、問題なく動作しています。しかし、郵便配達員または Java コードで渡すと、次の json が受信されます。

    {
      "error": {
        "errors": [
          {
            "domain": "global",
            "reason": "notFound",
            "message": "Not Found"
          }
        ],
        "code": 404,
        "message": "Not Found"
      }
    }

このエラーは、デフォルトのカレンダー ID のようなものを指定した場合にのみ発生しますen.indian#holiday@group.v.calendar.google.com(Holidays in India)

4

2 に答える 2

1

カレンダーに関する情報を取得するには、使用する必要があります

Calendar.get カレンダーのメタデータを返します。

リクエスト (アクセス トークンに注意):

GET https://www.googleapis.com/calendar/v3/calendars/en.indian#holiday@group.v.calendar.google.com?access_token=youraccesstoken

応答

{
 "kind": "calendar#calendar",
 "etag": "\"fBXC91rAg76NkSpaCdEoUEir1ww/pR1e1Z3gR0361TBF8mRGGxGD_VM\"",
 "id": "en.indian#holiday@group.v.calendar.google.com",
 "summary": "Holidays in India",
 "timeZone": "Europe/Copenhagen"
}

この呼び出しでは、パブリック カレンダーの場合でも、yes として認証される必要があります。

カレンダー リストは、認証されたユーザーがこのカレンダーをカレンダー リストに追加した場合にのみ機能します。

Calendarlist.get

リクエスト

GET https://www.googleapis.com/calendar/v3/users/me/calendarList/en.danish#holiday@group.v.calendar.google.com?access_token=youraccesstoken

応答

{
 "kind": "calendar#calendarListEntry",
 "etag": "\"1442929251602000\"",
 "id": "en.danish#holiday@group.v.calendar.google.com",
 "summary": "Holidays in Denmark",
 "timeZone": "Europe/Copenhagen",
 "colorId": "11",
 "backgroundColor": "#fbe983",
 "foregroundColor": "#000000",
 "selected": true,
 "accessRole": "reader",
 "defaultReminders": []
}

認可

このリクエストには、少なくとも次のスコープの 1 つによる承認が必要です (認証と承認の詳細を参照してください)。

スコープ https://www.googleapis.com/auth/calendar.readonly https://www.googleapis.com/auth/calendar

注: マイ カレンダーは、当該ユーザーが作成したカレンダーのリストです。他のカレンダーは、ユーザーと共有されたカレンダーのリストです。

于 2017-05-08T07:58:16.517 に答える