将Hello Sign API连接到应用程序脚本项目 参考文献:

问题描述

我想使用Google Apps脚本和Hello Sign API创建新的API应用

我已将重定向URL指定为https://script.google.com/macros/s/AKfycbyKw3oLmpqINGsDml281iUbxBboKn950dqVFXNibMfLurxYcRPf/exec,并且屏幕截图如下所示

此外,应用程序脚本文件代码

function doPost(e) {
return ContentService.createtextoutput("Hello API Event Received.");
}

文档说:https://app.hellosign.com/api/eventsAndCallbacksWalkthrough

我收到如下所示的错误消息

此处的插图图片

解决方法

查看我们的后端日志,我们发现您的回调URL不允许授予我们的POST调用以获取“收到Hello API事件”响应。这可能是由于您的[回调处理程序设置] [1]。

您介意看看这个类似的问题吗,他们以何种方式解决了POST / {Allow头字段,并通过发送电子邮件至apisupport@hellosign.com告诉我们如何处理?

App Script sends 405 response when trying to send a POST request

[1]:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status/405#:~:text=The%20HyperText%20Transfer%20Protocol%20(HTTP,受支持的% 20by%20the%20target%20resource。

,

405)是“不允许的方法”,其中使用了错误的方法。在这种情况下,ContentService使用特定的重定向模式( wiki),其中对POST的{​​{1}}请求被重定向(302 )到script.google.com的一个网址,应该向script.googleusercontent.com请求。

302 specification并不打算将方法从GET更改为POST,但是这种模式在网络中非常普遍。但是,似乎向GET处的一次重定向URL发出了另一个POST请求。从应用程序脚本更改此行为没有什么可做的。可以更改为script.googleusercontent.com以避免重定向,但是Hellosign特别要求您提供特定的文本内容作为响应:HtmlServiceHello API Event Received无法做到这一点。

您可以make a feature request/bug fix request到Google将重定向状态更改为303,其中已明确指定将方法更改为HtmlService。或向Hellosign请求以GET的请求跟随302重定向,因为这是最常见的方式,事情是在网络上完成的。

参考文献: