一个枚举,用于确定 Apps Script 能够通过触发的函数执行哪些类别的已获授权服务。这些值会在触发的函数中作为事件参数 e
的 auth
属性公开。如需了解详情,请参阅插件授权生命周期指南。
如需调用枚举,您可以调用其父类、名称和属性。例如
ScriptApp.AuthMode.CUSTOM_FUNCTION
。
function onOpen(e) { const menu = SpreadsheetApp.getUi().createAddonMenu(); if (e && e.authMode === ScriptApp.AuthMode.NONE) { // Add a normal menu item (works in all authorization modes). menu.addItem('Start workflow', 'startWorkflow'); } else { // Add a menu item based on properties (doesn't work in AuthMode.NONE). const properties = PropertiesService.getDocumentProperties(); const workflowStarted = properties.getProperty('workflowStarted'); if (workflowStarted) { menu.addItem('Check workflow status', 'checkWorkflow'); } else { menu.addItem('Start workflow', 'startWorkflow'); } // Record analytics. UrlFetchApp.fetch('http://www.example.com/analytics?event=open'); } menu.addToUi(); }
属性
属性 | 类型 | 说明 |
---|---|---|
NONE | Enum | 此模式不允许访问任何需要授权的服务。当插件执行 on 简单触发器,并且用户已在其他文档中安装插件,但该插件尚未在当前文档中使用时,就会出现此模式。 |
CUSTOM_FUNCTION | Enum | 此模式允许访问一小部分服务,以便在自定义电子表格函数中使用。其中一些服务(包括对 Google 表格服务的只读访问权限)通常需要授权,但在自定义函数中使用时,无需授权即可。由于自定义函数不包含事件参数,因此系统绝不会返回此值;记录此值只是为了证明自定义函数在自己的授权模式下运行。 |
LIMITED | Enum | 一种模式,允许访问一小部分服务。当绑定到文档的插件或脚本执行 on 或 on 简单触发器时,就会出现此模式,但 NONE 所述的情况除外。 |
FULL | Enum | 一种模式,允许访问需要授权的所有服务。如果是在 LIMITED 或 NONE 中所述情况以外的任何触发器的结果下执行了插件或脚本,则会出现此模式。 |