23

そこで、Google の API を呼び出す REST メソッドを使用してきました。ID を持っている特定のカレンダーにイベントを挿入する必要があります。これは私が送信している POST リクエストです:

アドレス: https://www.googleapis.com/calendar/v3/calendars/ {calendarID}/events

体:

Authorization:  Bearer {access_token}
{
 "end": {
  "dateTime": "2012-08-30T12:30:00",
  "timeZone": "America/Chicago"
 },
 "start": {
  "dateTime": "2012-08-30T14:00:00",
  "timeZone": "America/Chicago"
 },
 "summary": "E E 306",
 "colorId": "9"
 "kind": "calendar#event"
}

そして、これは私が得続ける応答です:

{
 "error":{
  "errors":[
   {
    "domain":"calendar",
    "reason":"timeRangeEmpty",
    "message":"The specified time range is empty.",
    "locationType":"parameter",
    "location":"timeMax"
   }
  ],
  "code":400,
  "message":"The specified time range is empty."
 }
}

何が間違っている可能性があるのか​​ わかりません。必要なデータをすべて入力しましたが、イベントには存在しないパラメーターを要求しています。また、この特定の問題に関するドキュメントも見つかりません。誰かが私が見逃しているものを見ていますか?

4

5 に答える 5

62

この質問をしている最中に、私は頭を痛めたのではないかと思います。結局のところ、この問題に関するドキュメントが見つからなかったのは、それがあまりにもばかげていたからです。

それが私にそのような面白いエラーを与えていた理由は、私がテストするために行っていたコピーペーストで、開始時刻と終了時刻を反転したためです. そのため、Google カレンダーに、開始前に終了したイベントを入力するように指示していましたが、これは通常、あまりうまく終了しません。

簡単に言えば、イベントを挿入しようとしているときに「timeMax」パラメーターを参照してエラーが発生した場合は、開始時刻と終了時刻を確認してください。

于 2012-06-05T04:08:19.900 に答える
1
{
 "end": {
  "dateTime": "2014-04-01T10:00:00-06:00"
 },
 "start": {
  "dateTime": "2014-04-02T10:00:00-06:00"
 }
于 2014-04-01T17:52:41.667 に答える