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

如何通过Apps Script获取自有Google日历共享链接并设置订阅权限

Google日历共享链接生成与权限配置解决方案

一、生成共享链接

Google Apps Script的CalendarApp没有直接返回共享链接的内置函数,但可以通过日历ID手动拼接标准的共享链接,就像你已经实现的那样:

const year = 2025;
const cal = CalendarApp.getCalendarsByName(year + " Practices")[0];
const calId = cal.getId();
const calLink = `https://calendar.google.com/calendar/u/0?cid=${calId}`;

这个链接可以直接嵌入HTML邮件中,用户点击后就能访问对应日历。

二、配置符合需求的权限

完全可以实现「仅拥有链接的用户可查看/订阅日历、无法修改,且日历不公开」的需求,通过CalendarApp的setSharing()方法即可完成配置:

// 接上面的代码,获取到cal对象后执行
cal.setSharing(CalendarApp.AccessRole.READER, CalendarApp.PublicAccess.NONE);

参数说明:

  • CalendarApp.AccessRole.READER:授予链接持有者只读权限(可查看事件、订阅日历,但无法修改)
  • CalendarApp.PublicAccess.NONE:将日历设置为非公开状态,只有持有链接的用户才能访问,不会被搜索引擎索引或公开可见

执行这段代码后,你的日历就会满足设定的权限要求,无需将其设为完全公开。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 20:02:36