Как насчет этой модификации?
Официальный документ гласит следующее. Это уже упоминалось в вашем вопросе.
challenge
: случайно сгенерированная строка, созданная Slack. Смысл этой маленькой игры в кошки-мышки состоит в том, что вы будете отвечать на этот запрос телом ответа, содержащим это значение.
Поэтому, пожалуйста, измените ваш скрипт для возврата значения challenge
из doPost
следующим образом.
Модифицированный скрипт:
function doPost(e) {
if (typeof e !== 'undefined') {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Sheet1');
sheet.getRange(1,1).setValue(JSON.stringify(e));
}
var v = JSON.parse(e.postData.contents); // Added
return ContentService.createTextOutput(v.challenge); // Added
}
Примечание:
- При изменении скрипта веб-приложений, пожалуйста, повторно разверните веб-приложения как новую версию. Таким образом, последний скрипт отражается на веб-приложениях. Пожалуйста, будьте осторожны.
Ссылки:
Если это не было прямым решением вашей проблемы, я прошу прощения.
Добавлено:
Из вашего ответа I'm getting the same error.
, я думал, что последний скрипт не может быть отражен в веб-приложениях. И как простой скрипт, пожалуйста, скопируйте и вставьте следующий скрипт вместо вашего скрипта. И, пожалуйста, повторно разверните веб-приложения в новой версии. Затем проверьте его еще раз.
Пример сценария:
function doPost(e) {
var v = JSON.parse(e.postData.contents);
return ContentService.createTextOutput(v.challenge);
}
- Когда вы изменили сценарий веб-приложений, пожалуйста, повторно разверните веб-приложения как новую версию. Таким образом, последний скрипт отражается на веб-приложениях. Пожалуйста, будьте осторожны с этим.