从今天开始,我对 Google Calendar API v3 的 2 个类似调用之一遇到了问题:
calendar.events.list
两个调用都请求分配列表并使用 privateExtendedProperty 过滤它们,但 key=Value 对是不同的。
当我将privateExtendedProperty设置为myStatus=READY时,它返回我需要的事件,但是当我将privateExtendedProperty设置为myId=agxzfm1haWxmb29nYWVyNQsSDE9yZ2FuaXphdGlvbiIVYWN0aXZlZ2FtaW5nbWVkaWEuY29tDAsSBENhc2UYkcHA3wgM 时,它没有返回任何事件,尽管我确定有这几个事件...
当使用 90 个字符长的 privateExtendedProperty 查询时,日历 API 列表似乎返回一个空列表。
多年来一切正常,但今天早上我的一些用户突然崩溃了......
这是我的要求:
GET googleapis.com/calendar/v3/calendars/****/events?privateExtendedProperty=myId%3Dagxzfm1haWxmb29nYWVyNQsSDE9yZ2FuaXphdGlvbiIVYWN0aXZlZ2FtaW5nbWVkaWEuY29tDAsSBENhc2UYwauk6QgM&key={YOUR_API_KEY}
这是我在 API Explorer 中看到的结果:
{
"kind": "calendar#events",
"etag": "\"*****\"",
"summary": "*****",
"description": "*****",
"updated": "2018-02-20T03:18:35.098Z",
"timeZone": "Asia/Tokyo",
"accessRole": "owner",
"defaultReminders": [
],
"nextSyncToken": "CJDv1KDEs9kCEJDv1KDEs9kCGAU=",
"items": [
]
}
更新 1: 我的 privateExtendedProperty 看起来像这样:
{
"myStatus": "READY",
"myId": "agxzfm1haWxmb29nYWVyNQsSDE9yZ2FuaXphdGlvbiIVYWN0aXZlZ2FtaW5nbWVkaWEuY29tDAsSBENhc2UYkcHA3wgM",
"another": "Another value",
"another2": "Another value2"
}
当我使用“myStatus=READY”查询事件时 - 返回事件,但是当我对“myId=agxzfm1...”执行相同操作时 - 它返回 emtpy 列表。
更新2: 对于那些有同样问题的人。根据建议,我创建了一个新日历,然后复制了一些测试数据并在 privateExtendedProperty 查询中尝试了 long 值,它按预期返回了事件。这意味着,如果这是一个错误 - 并非所有日历都会受到影响,将事情转移到新日历可能是一种方法。