我想让 myFunction() 发送一个负载,该负载将由 doPost 处理并根据负载返回一些内容。我只能让这些测试脚本在以下任一情况下工作:
a) 使用 doGet(),不传递有效载荷,而是按预期返回输出。
或者
b) 使用 doPost(),传递有效负载但得到 405 代码而不是输出。
我错过了什么?
function doPost(e) {
var ss = SpreadsheetApp.openById('<spreadsheet id for recording parameters>');
var sheet = ss.getSheets()[0];
var record;
for (var i in e.parameters) {
record = 'parameter: ' + i + ' = ' + e.parameters[i];
sheet.getRange(sheet.getLastRow() + 1, 1, 1, 1).setValue(record);
}
var output = ContentService.createTextOutput();
output.setContent("content to return");
return output;
}
function myFunction() {
var url = '<url of above script webapp, set to anonymous, anyone>';
var payload = {payloadToSend : 'string to send'};
var method = 'post'
var response = UrlFetchApp.fetch(url, {method : method, payload: payload}).getContentText();
Logger.log(response);
return;
}