构建 Webhook 以将录音信息从 Zoom 发送到 Google 应用脚本 - 获取状态 302
Building Webhook to send Recordings info from Zoom to Google App Script - Getting Status 302
我正在构建一个 webhook,它将完成的录音信息从 Zoom 发送到已部署的 Web 应用程序。 Webhook 将在录制完成时触发。
以下是事件通知的完整架构:
{
"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"
}
]
}
}
}
这是我的网络应用程序代码:
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 Apps 中,当返回 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 Apps的脚本时,请重新部署Web Apps为新版本。由此,最新的脚本被反映到Web Apps。请注意这一点。
注:
- 如果在没有值返回到缩放侧时将状态代码更改为
200
,在这种情况下,我认为HtmlService.createHtmlOutput
可能也可以使用。
我正在构建一个 webhook,它将完成的录音信息从 Zoom 发送到已部署的 Web 应用程序。 Webhook 将在录制完成时触发。
以下是事件通知的完整架构:
{
"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"
}
]
}
}
}
这是我的网络应用程序代码:
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 Apps 中,当返回 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 Apps的脚本时,请重新部署Web Apps为新版本。由此,最新的脚本被反映到Web Apps。请注意这一点。
注:
- 如果在没有值返回到缩放侧时将状态代码更改为
200
,在这种情况下,我认为HtmlService.createHtmlOutput
可能也可以使用。