gpt4 book ai didi

post - doPost 在 Google 应用脚本中不起作用

转载 作者:行者123 更新时间:2023-12-05 07:38:52 25 4
gpt4 key购买 nike

我遇到了各种各样的问题,但没有一个能解决我的问题。我在谷歌应用程序脚本中写了一个简单的 doPost() 代码:

function doPost(e){
Logger.log("Hello World");
}

然后我将其部署为 Web 应用程序并将 url 粘贴到 hurl.it 上以发出发布请求。但是,日志中没有记录任何内容,响应为 200 (Ok)。我认为它不会进入此 doPost() 函数。谁能指导我在这里做错了什么?

最佳答案

您的实现不符合网络应用程序所需的所有要求。这是文档 ( link ) 的摘录:

Requirements for web apps

A script can be published as a web app if it meets these requirements:

  • It contains a doGet(e) or doPost(e) function.
  • The function returns an HTML service HtmlOutput object or a content service TextOutput object.

这里有一些例子:

function doGet(e) {
var params = JSON.stringify(e);
return HtmlService.createHtmlOutput(params);
}

function doPost(e) {
return ContentService.createTextOutput(JSON.stringify(e.parameter));
}

为了完整起见,您还必须在每次更改代码时将您的 Web 应用程序重新部署为新版本。在现有版本下重新部署是行不通的,您必须创建一个新版本才能使您的更改生效。

同时使用标准 Logger.log 来跟踪 doGet(e)doPost(e) 中的更改对于 Web 应用程序来说是不可靠的,因为它们是异步执行的。我建议将您的输出记录到电子表格中。有一个很棒的脚本库叫做 BetterLog,它扩展了 Logger API 来做到这一点;可以在以下链接中找到:

https://github.com/peterherrmann/BetterLog


2018-07-18 更新

Apps 脚本现在支持 StackDriver Logging,可从 Apps 脚本编辑器的“查看”菜单访问。

关于post - doPost 在 Google 应用脚本中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47481437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com