尝试执行 google 脚本时出现 403

2023-12-21

我正在尝试通过 API 执行谷歌脚本。我已授权所有必要的范围,包括我的参数、函数和开发模式:

POST https://script.googleapis.com/v1/scripts/{scriptId}:run

{
     "devMode":true,
     "function":"createNewSpreadsheetTrigger",
     "parameters":["{fileId}"]
}

但继续收到 403:

{
  "error": {
    "code": 403,
    "message": "The caller does not have permission",
    "status": "PERMISSION_DENIED"
  }
}

我使用尝试远程执行的同一帐户创建了此脚本。

想法?

Thanks!


Per 文档 https://developers.google.com/apps-script/api/reference/rest/v1/scripts/run -

错误403, PERMISSION_DENIED:调用者没有权限,表示授权请求使用的云平台项目与脚本使用的不一样。

我偶然发现了类似的问题,所以我创建了本文 https://script.gs/how-to-use-google-apps-script-rest-api-from-browser-editor/解释适合我的用例的最佳行动方案。

但是,这里是建议的步骤 -

  1. 创建一个新的谷歌云平台项目 https://cloud.google.com/resource-manager/docs/creating-managing-projects#creating_a_project
  2. enable 应用程序脚本 API https://cloud.google.com/apis/docs/getting-started#enabling_apis来自 gcp 库
  3. 创建一个oauth 同意屏幕 https://support.google.com/cloud/answer/6158849?hl=en,针对该项目
  4. 生成 API 密钥 https://cloud.google.com/docs/authentication/api-keys#creating_an_api_key
  5. type up a new script
    • 使用适当的范围更新清单文件
  6. 将应用程序脚本的默认项目更改为新创建的项目

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试执行 google 脚本时出现 403 的相关文章

  • 触发器根据其创建维护激活序列并在每次运行时保护电子表格数据

    我正在向我的 Web 应用程序发送 5 个请求 import requests backodds 3 00 layteam Flamengo layodds 1 50 advantage 25 55 webAppsUrl https scr
  • 自动 IIS6 403.4 重定向到 SSL 不起作用

    我的 ASP Net 网站中有一个目录需要启用 SSL 对于所有其他目录 我不希望启用 SSL 使用 IIS 我为我想要需要 SSL 的文件夹选中了 需要安全通道 SS 和 128 位加密复选框 现在 当用户在我的安全目录中输入 http
  • Gmail 菜单按钮

    我希望编写一个 Google 脚本来存档所有早于某个日期的电子邮件 在该脚本中 我将添加一个自定义按钮 就像在 Google Sheets 中一样 以便我可以运行我的脚本 Google 脚本中是否存在向 Gmail 中的 UI 添加菜单 按
  • 无法实施第三方 Google 日历会议插件

    我正在研究 Google 日历会议插件的实施并发现了一些问题 我按照文档执行示例代码 但它没有按预期工作 从我的角度来看 我的清单文件是完整的 但是当我尝试从 从清单部署 链接发布日历会议插件时 它会打开我的谷歌日历 但它不会显示我的会议
  • 服务不可用:复制 Google 文档时出现 DOCS

    突然遇到一个问题 即 Google DOCS 服务在调用一些复制元素后失败 有趣的是 它实际上复制了第一个元素 但是当它进入 for 内的第二个循环时 它失败并给出以下错误 服务不可用 文件 该脚本在我们公司内部发布后 可以正常运行几个月
  • 复制电子表格也会复制所有链接的文件

    当我使用库方法时 我希望能够仅复制电子表格及其所有工作表以及所有定义的工作表名称 spreadSheet copy newSSName Or myFile makeCopy newNameOfFile 目前 这些方法复制所有链接的表单和表单
  • 如何使用 Google Sheets onEdit() 触发器运行函数来更新 Google Form

    我有一个 Google 表格工作簿 其中有一个工作表 我想用它来保存工作簿和 Google 表单的设置 我做了一个定制onEdit 触发两个函数的函数 一个用于更新工作簿 另一个用于更新表单 function onEdit e var ra
  • Drive.Permissions.insert(值)-Drive API,您可以在“值”下使用数组吗?

    是否可以在此处使用 值 下的数组来阻止我创建组别名电子邮件地址 例如 userValues email protected cdn cgi l email protection email protected cdn cgi l email
  • Google Apps 脚本:连接日期和时间

    更新 要使用 AppsScript 创建 Google 日历事件 我们可以使用以下简单方法createEvent eventName startTime endTime 我已经使用过这个并且没有任何问题 但我使用的唯一日期格式是谷歌表格中的
  • 如何使用 Google Apps Docs 脚本将光标移动到文档的开头?

    我正在用我的 Google 文档编写 Google Apps 脚本的脚本 并想知道如何将光标移动到文档的开头 我最后想做的只是用一些字符串替换第一行 这个很简单 你可以使用setCursor method 记录在这里 https devel
  • 如何像函数一样使用 google.script.run

    在 Google Apps 脚本中 我有以下脚本 function doGet return HtmlService createHtmlOutputFromFile mypage function writeSomething retur
  • 自动递增 ID 号 Google Apps 脚本

    我想在向工作表添加新值时自动增加 ID 我尝试从当前的 ID 列表创建一个列表 但它只计数到 5 因此当自动递增时 它只会到达一个点并为每个输入保存该数字 以下是我尝试获取 ID 号列表的方法 但它没有获取整个列表 我缺少什么 var ss
  • ArrayFormula 破坏了 getLastRow() 函数。可能的解决方法?

    在我的电子表格中 我有一个正在运行的脚本 它使用getLastRow 功能是其逻辑的重要组成部分 自从我在其中一列中应用数组公式以来 getLastRow 功能无法正常工作 即使其他列中没有其他值 数组公式似乎也一直 应用 到工作表的底部
  • Google Apps 脚本 - 是否可以仅通过 Google Apps 脚本更改表格中的某些单元格?

    我在 Google SpreadSheet 中制作了一个目录 我的电子表格有一个表格 用户可以在其中添加信息 该表是通过从数据库表获取数据的脚本动态创建的 用户可以编辑表中的某些单元格 然后单击按钮将更改保存回数据库表中 我想限制他可以手动
  • 如何使用 Google Apps 脚本将文件夹从我的云端硬盘复制到团队云端硬盘?

    我发现以下 Google Apps 脚本允许我将文件夹从 MyDrive 复制到 MyDrive 以及将 SharedFolders 复制到 MyDrive function start var sourceFolder source va
  • 谷歌表格在一行上的不同单元格范围上添加时间戳

    我一直试图在与该行上两个不同单元格范围相对应的行上放置两个时间戳 我已成功使用此脚本对行上的任何更改 第 5 列之后 添加时间戳 我想要的是 如果单元格范围 F 到 L 发生任何更改 则在 E 列中放置一个时间戳 然后 如果从 N 列到 Z
  • 如何将值传递到 HTML 模板侧边栏?

    我的任务是更换一些现有的 Access 数据库 我想知道你们是否可以帮助我 目前 我有一个谷歌表格 https docs google com spreadsheets d 1JS5Iwx60Zk7VL8lYz6Yj7ew4eYPhl2Nk
  • 联系人应用程序性能

    对谷歌脚本的 ContactsApp 进行一些测试并加载联系人 看起来运行 ContactsApp getContacts 加载所有联系人 所需的时间与运行 ContactsApp getContact email 特定联系人 所需的时间一
  • 根据表单提交创建名称的新工作表

    在 Google Sheets 中 我有一个脚本 用于为提交的每个 Google 表单创建一个新工作表 它应该创建一个新工作表 其名称基于最后一列 G 列 不是表单提交的列 然后 它从最后一行和标题行获取信息并将其复制到创建的工作表的前两行
  • 如何通过 Apps Script & Drive SDK 创建新的脚本文件

    尝试通过在 Apps 脚本中调用 Drive SDK 来创建包含文件的新项目 下面的内容到底会放在哪里UrlFetchApp要求 files id 9basdfbd 749a 4as9b b9d1 d64basdf803 name Code

随机推荐

  • 如何通过 javascript 将图像/ HTML 画布切成两半?

    我正在使用 html2canvas 将具有自定义功能的谷歌地图 javascript API 转换为画布 然后转换为图像 在所有浏览器上都可以正常工作 但在 IE 11 上它会生成一个图像 图像右侧有额外的空白区域 等于 浏览器窗口的宽度
  • 传递到字典中的模型项的类型为“mvc.Models.ModelA”,但该字典需要类型为“mvc.Models.ModelB”的模型项

    我在一些构建中遇到了这个恼人的错误 项目中没有错误 因为如果我再次构建 问题就会消失 仅当站点部署到 Windows 2008 Server 时才会出现该消息 我首先认为这可能是临时文件的问题 但事实并非如此 我将构建部署到不同的网络 但错
  • F# 异步中的结果与提升?

    似乎有两种方法可以返回错误async工作流程 raise and Result let willFailRaise async return raise lt new Exception oh no let willFailResult a
  • 单击后将 ActiveX 命令按钮颜色更改回之前的颜色

    我有一个包含超过 65 个 ActiveX 命令按钮的电子表格 当我左键单击一个命令按钮时 它会变成绿色并在单元格中添加一个 1 当我右键单击同一个命令按钮时 它会变成红色并在单元格中添加 1 当我单击另一个命令按钮时 我想将上一个命令按钮
  • 是否可以在 PostgreSQL 中将枚举转换为文本

    是否可以将 postgresql 模式中声明的枚举转换为文本 以便我可以对枚举列使用 like 子句 您可以将枚举投射到text轻松地并在其上使用任何文本运算符 SELECT FROM table WHERE enumfield TEXT
  • 如何将视频从 USB 网络摄像头流式传输到远程 HTML 页面

    我想创建一个程序 将视频从我的 USB 网络摄像头通过互联网传输到网页 目前 我使用一个网络服务 当触发时 会调用fswebcam捕获图像 保存到数据存储 转换为 base64 二进制并将该数据发送到 HTML 页面 在该页面中将其呈现到
  • python time.time() 和“夏令时”

    当运行python的计算机的时钟 Windows或Linux 时会发生什么 自动更改并调用time time 我读过的价值time time 当手动将时钟更改为过去的某个值时 该值会更小 time time docs https docs
  • Delphi XE2:可以在VCL应用程序中实例化FireMonkey Form吗?

    在 Delphi XE2 之前 我们只有 VCL 来创建 GUI 应用程序 德尔福 XE2 指出 注意 FireMonkey FMX 和可视化组件库 VCL 是 不兼容且不能在同一项目中使用或 应用 也就是说 一个应用程序必须是唯一的一个或
  • 从 DateTime.Now 获取本周的天数列表

    我的自相矛盾或者可能是微不足道的问题是创建一个从今天开始的日期列表 格式为 DD MM YY 假设今天是 11 04 2015 我想创建一个从 2015 年 11 月 2 日星期一到 2015 年 11 月 8 日星期日开始的日期时间列表
  • 无法启动 Ripple 的浏览器进程

    当我在 Visual Studio 中创建新的移动应用程序时 我可以运行它并且不会发生任何问题 但是当我开始运行另一个应用程序 由其他开发人员创建并在 TFS 上共享 时 我收到以下消息 Unable to get launched bro
  • 在合金中编程递归函数

    我正在尝试在 Alloy 中构造一个递归函数 根据丹尼尔 杰克逊书中显示的语法 这是可能的 我的职能是 fun auxiliaryToAvoidCyclicRecursion idTarget MethodId m Method Metho
  • 删除 AJAX 响应中的空白

    我有一个返回的 php 脚本0 28 然后使用 AJAX 将其提取到 HTML 并插入到跨度中 问题是 它插入了 5 个空格 并且似乎是换行符 然后 jQuery 将其视为更改 并在没有更改时使用新值更新现有范围 看来空格不是来自 php
  • 在 Windows 服务器上设置 RabbitMQ 集群

    我正在尝试在 Windows 服务器上设置 RabbitMQ 集群 这需要使用共享的 Erlang cookie 文件 根据文档 我需要做的就是确保不同机器上的根目录包含相同的 erlang cookie 文件 所以我所做的就是在两台机器上
  • 序列压缩?

    最近我遇到了一个让我很困惑的问题 问题是 我想压缩一个序列 这样就不会丢失任何信息 例如 一个 一个 一个 b gt 一个 b a b a a c gt a b a a c 它不能被压缩为 a b a c 因为这样我们会丢失 a a 有什么
  • 下一页 13.4 错误:API 路由中的 NEXT_REDIRECT

    我的 app api auth route ts 文件 import redirect from next navigation export async function GET req Request try redirect dash
  • 是否可以在不初始化的情况下使用数组?

    我从 Stack Overflow 上看到了一些代码 这让我很困惑 我只是不知道是否缺少某些部分 代码如下 ch curl init captcha url curl setopt ch CURLOPT USERAGENT this gt
  • 快速提供静态文件和路由

    我正在使用express js 我的根路径是 xyz 如果路径是 xyz api 我想为我想要提供静态文件的任何其他路径提供 json 例如 xyz abc 或 xyz def bjk 等 我当前的配置如下 app use xyz path
  • JavaScript 中的 me = this 是支持缩小的好习惯吗?

    所以在我的 JavaScript 代码库中我一直在使用var me this支持缩小的习惯用法 但我最近开始质疑这一点 我想知道是否分配this使用更智能的缩小工具可以避免变量的变化吗 似乎工具应该能够检测创建变量来表示的函数this将通过
  • 将列逆透视为行(oracle)

    很像这个原来的SO在 Oracle 中动态地将行转换为列 https stackoverflow com questions 7730111 pivoting rows into columns dynamically in oracle
  • 尝试执行 google 脚本时出现 403

    我正在尝试通过 API 执行谷歌脚本 我已授权所有必要的范围 包括我的参数 函数和开发模式 POST https script googleapis com v1 scripts scriptId run devMode true func