You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Google Calendar API批量获取多用户公开日程详情?

批量获取多个用户的Google Calendar公开日程

Google Calendar API没有专门的端点直接批量获取多用户的公开日程,但可以利用Google API通用的批量请求机制来合并多个单个查询请求,减少HTTP握手开销,提升效率。

实现步骤

  • 使用Google批量请求端点:所有支持批量的Google API都可以通过https://www.googleapis.com/batch发送合并请求,Calendar API也兼容这个机制。

  • 构造批量请求内容:
    每个子请求需要用自定义分隔符(比如batch_abc123)分隔,每个子项包含:

    1. 分隔符开头
    2. Content-Type: application/http头
    3. Content-Transfer-Encoding: binary头
    4. 具体的请求行(比如GET /calendar/v3/calendars/user1@example.com/events)
    5. 子请求的头信息(如果需要,比如授权头)
    6. 空行结束子请求
  • 示例请求结构:

POST /batch HTTP/1.1
Host: www.googleapis.com
Authorization: Bearer YOUR_ACCESS_TOKEN
Content-Type: multipart/mixed; boundary=batch_abc123

--batch_abc123
Content-Type: application/http
Content-Transfer-Encoding: binary

GET /calendar/v3/calendars/user1@example.com/events?maxResults=10

--batch_abc123
Content-Type: application/http
Content-Transfer-Encoding: binary

GET /calendar/v3/calendars/user2@example.com/events?maxResults=10

--batch_abc123--

关键注意事项

  • 子请求数量限制:单次批量请求最多包含100个子请求,超过的话需要拆分多次发送。
  • 授权与权限:访问公开日程通常不需要授权,但如果是访问域内用户的共享日程,仍需通过OAuth 2.0获取对应权限,且授权令牌要包含所有子请求所需的权限。
  • 速率配额:批量请求不会突破API的速率限制,每个子请求仍会单独计入配额,批量只是优化网络层面的效率。
  • 响应解析:批量请求的响应也是多部分格式,需要按分隔符拆分每个子请求的响应结果,分别处理成功或失败的情况。

内容的提问来源于stack exchange,提问作者IMTheNachoMan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 19:15:59