【发布时间】:2018-04-02 20:22:03
【问题描述】:
我创建了一个非常基本的 Google Apps 脚本。这是我的doPost() 和doGet():
function doPost(e) {
return respond(JSON.stringify({result: "Hello world!"}));
}
function doGet(e) {
return respond(JSON.stringify({result: "Hello world!"}));
}
function respond(response) {
return ContentService
.createTextOutput(response)
.setMimeType(ContentService.MimeType.JSON)
}
我已经使用新版本部署了该应用程序。它设置为像我一样运行,但每个人都可以运行它,包括匿名的。
我正在通过从命令行运行 cURL 来测试端点,对于 GET,它按预期工作:
请求 -
curl -L https://script.google.com/macros/s/AKfycbxYxgMfMkR6hGI5UO2Gn8tg369oqsy_W41-olb0Do1y8gOjaNvm/exec
响应 -
{"result":"Hello world!"}
但对于 POST:
请求 -
curl -H "Content-Length: 0" -D "p=p" -X POST -L https://script.google.com/macros/s/AKfycbxYxgMfMkR6hGI5UO2Gn8tg369oqsy_W41-olb0Do1y8gOjaNvm/exec
响应 -
Sorry, unable to open the file at this time.
Please check the address and try again.
正如您从命令中看到的那样,我不得不稍微操作一下才能做到这一点:包括虚拟数据、添加内容长度标头以及添加 -L 标志以使用重定向。
但是,我被卡住了。为什么它不能“找到文件”?为什么它认为有文件?
【问题讨论】:
标签: http curl google-apps-script