Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 从外部调用Google应用程序脚本_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 从外部调用Google应用程序脚本

Google apps script 从外部调用Google应用程序脚本,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我有一份Jenkins的工作,负责完成某些工作,并将输出发送到我的Gmail收件箱。我已经开发了一个谷歌应用程序脚本,当我手动触发它时,它将读取我的邮件并更新我谷歌工作表中的一些数据 我尝试将它部署在web app server上,以便能够在外部调用它,但我遇到了一些问题 举个例子,假设我有下面的应用程序脚本,并希望从外部触发 function addProduct() { var sheet = SpreadsheetApp.openById("5780945843058"); she

我有一份Jenkins的工作,负责完成某些工作,并将输出发送到我的Gmail收件箱。我已经开发了一个谷歌应用程序脚本,当我手动触发它时,它将读取我的邮件并更新我谷歌工作表中的一些数据

我尝试将它部署在web app server上,以便能够在外部调用它,但我遇到了一些问题

举个例子,假设我有下面的应用程序脚本,并希望从外部触发

function addProduct() {
  var sheet = SpreadsheetApp.openById("5780945843058");
  sheet.appendRow(['Cotton Sweatshirt XL', '$12']);
}
  • 我应该在
    doGet()
    中写什么?我不确定如何构建我的代码来实现这一点。我看了一些例子,但我感到困惑
  • 如果最终用户不需要登录,我如何才能在外部运行它,因为我将从Jenkins/Python触发它

  • 请澄清。

    发布您的web应用程序以在您的状态下执行(没有人登录),添加密码保护(即检查请求中的秘密签名)(除了您之外,没有人可以像您一样行事),然后从相关的GET/POST事件处理程序调用您的函数我已经生成了当前web应用程序URL,当我通过点击URL运行它时,我找不到
    脚本函数:doGet
    ,但当我使用
    测试web app测试您的最新代码时。
    ,我能够获得所需的输出。这里缺少的是
    /exec
    仅从文件->管理版本运行脚本的保存快照,而
    /dev
    将从当前状态运行脚本(上次单击“保存”按钮或在脚本编辑器中运行任何函数时)。上次保存版本时是否有
    doGet
    功能?我能够找出错误。我必须始终保存为新版本。当我在浏览器中启动URL时,以及在匿名模式下,我能够获得输出。但是当我尝试从python触发相同的URL时,我看到了HTTP 200,但是现在出现了所需的输出,我如何从外部调用此URL?@sdgd这是一个更复杂的过程,但您也可以利用WHERS允许远程调用应用程序脚本函数。还有一个可用的。