Mat*_*t W 3 google-apps-script postman
我已经创建了一个Google脚本并将其发布为网络应用程序,非常类似于此帖子中的内容。
但是,我想doGet使用Postman 调用极其简单的方法。该Web应用程序以我的匿名访问和执行权限发布。
我期望能够将URL粘贴到Postman中,设置GET动词并命中Send-并在浏览器中看到相同的结果。我不。
我究竟做错了什么?
我在Google云端硬盘中创建了一个Google Apps Script被叫的电话devices。我添加了以下功能:
function doDelete(e) {
return HtmlService.createHtmlOutput('{"test":"yes"}');
}
Run Code Online (Sandbox Code Playgroud)
很简单,我知道,但是应该使用以下方式响应DELETE请求:
{
"test": "yes"
}
Run Code Online (Sandbox Code Playgroud)
然后,单击Save,然后单击Deploy>,Publish as web app...并使用以下选项:
我点击Update并获得了这样的网址:
https://script.google.com/macros/s/ABcdefgHInmLDGiHmpGmXkXIxMjsh0s61sKZ9ov6OOSpkb--1quTtff/exec
如果该函数已命名,doGet并且将URL粘贴到浏览器中,则会看到上面提到的JSON。
如果我保留该函数的名称doDelete并向DELETEPostman发出请求,则会得到以下信息:
无法得到任何响应连接到https://script.google.com/macros/s/ABcdefgHInmLDGiHmpGmXkXIxMjsh0s61sKZ9ov6OOSpkb--1quTtfM/exec时出错 。发生这种情况的原因:服务器无法发送响应:确保后端正常运行自签名SSL证书被阻止:通过在“设置”>“常规代理”中配置不正确的“ SSL证书验证”来解决此问题。在“设置”>“代理请求超时”中正确配置了代理:在“设置”>“常规”中更改请求超时
如果将函数更改为doGet,重新发布并GET在Postman 的请求下调用它,则得到的结果相同。
[编辑]澄清
如果我使用进行邮递员呼叫GET并doGet设置了功能来调用IFTTT Webhook,则该Webhook会触发。我还可以使用Postman中的doPost和POST请求使其触发。
不过,如果我使用doDelete了DELETE在邮差请求,IFTTT网络挂接不会被调用。
无论Postman中使用的动词如何,我都不会得到回应-只是上面引用的消息。
[EDIT]回应@ sourabh-choraria 问题
我的代码目前是这样的:
function doGet(e) {
return HtmlService.createHtmlOutput('{"valid":"no"}');
}
Run Code Online (Sandbox Code Playgroud)
通过上述过程发布,与邮递员联系时会收到以下信息:
Could not get any response
Run Code Online (Sandbox Code Playgroud)
我提出GET没有任何标题的请求。
目前,根据Google Apps Script的网络应用程序对网络应用程序的要求,它们仅支持以下HTTP方法-
doGet()doPost()虽然在参考文档中没有明确声明不支持PUT,DELETE,UPDATE等,但是无法通过Apps Script中的Web Apps执行这些HTTP方法。
| 归档时间: |
|
| 查看次数: |
95 次 |
| 最近记录: |