构建 Webhook 以将录制信息从 Zoom 发送到 Google App Script - 获取状态 302



我正在构建一个网络钩子,它将完成的录制信息从 Zoom 发送到已部署的 Web 应用程序。

下面是事件通知的完整架构:

{
"event": "string",
"payload": {
"account_id": "string",
"object": {
"id": "integer",
"uuid": "string",
"host_id": "string",
"topic": "string",
"type": "integer",
"start_time": "string",
"timezone": "string",
"host_email": "string",
"duration": "integer",
"share_url": "string",
"total_size": "integer",
"recording_count": "integer",
"recording_files": [
{
"id": "string",
"meeting_id": "string",
"recording_start": "string",
"recording_end": "string",
"file_type": "string",
"file_size": "number",
"play_url": "string",
"download_url": "string",
"status": "string",
"recording_type": "string"
}
]
}
}
}

这是我的 Web 应用代码:

function doGet(e) {
return ContentService.createTextOutput('doGet request');
}
function doPost(e) {    
try {
var input = JSON.stringify(e.postData.contents);
input = JSON.parse(input);
//var myData = JSON.parse(e.postData.contents);
//return HtmlService.createHtmlOutput(myData);
}
catch (e) {
throw new Error(e);
}
return ContentService.createTextOutput("doPost received");
}

Web 应用以所有者身份执行应用进行部署,并且每个人都有权访问该应用。

我在缩放侧获得状态 302。

请给我一些建议。提前谢谢你!

这个修改怎么样?

修改点:

在 Web 应用中,当返回ContentService.createTextOutput时,似乎可以使用重定向。从您问题中302的状态代码来看,我认为这可能是您问题的原因。那么比如为了避免这个问题,下面修改一下怎么样?

修改后的脚本:

function doPost(e) {
try {
var input = JSON.stringify(e.postData.contents);
input = JSON.parse(input);
//var myData = JSON.parse(e.postData.contents);
//return HtmlService.createHtmlOutput(myData);
}
catch (e) {
throw new Error(e);
}
// return ContentService.createTextOutput("doPost received"); // Removed
}
  • 修改 Web 应用的脚本时,请将 Web 应用重新部署为新版本。这样,最新的脚本将反映到 Web 应用。请小心这一点。

注意:

  • 如果状态代码更改为200,当缩放侧没有返回任何值时,在这种情况下,我认为HtmlService.createHtmlOutput也可以使用。

最新更新