Попытка использовать режим Dev с GAS doPOST
Я пытаюсь проверить функцию doPost скрипта моего приложения с почтальоном. пока что у меня есть:
function doPost(e) {
var id = '1L_U7MhmV............................'
SpreadsheetApp.openById(id).getSheetByName('responses').appendRow([new Date()]);
var params = JSON.stringify(e.parameter);
return ContentService.createTextOutput(JSON.stringify(e.parameter));
}
Я могу заставить его работать со строкой / exec, но когда я пытаюсь использовать строку /dev, я не могу. Я получаю 500 ошибок. Я вошел в свой аккаунт и обновил номер версии при публикации. Как я могу заставить это работать?
РЕДАКТИРОВАТЬ:
Спасибо. Я пытаюсь вариант 1. Я создал функцию, которая записывает токен присяги:
function getOAuthToken1() {
Logger.log('Current project has ' + ScriptApp.getOAuthToken());
}
- Я запустил его и получил токен. Затем вставил его в
https://script.google.com/macros/s/ACCESSTOKEN/dev
но публикация к этому производит:
Sorry, the file you have requested does not exist.
EDIT2:
1 ответ
- Вы хотите использовать
doPost()
и доступ к веб-приложениям с конечной точкойhttps://script.google.com/macros/s/###/dev
,
Если мое понимание верно, https://script.google.com/macros/s/ACCESSTOKEN/dev
не может быть использован в качестве конечной точки. Пожалуйста, используйте оригинальную конечную точку https://script.google.com/macros/s/###/dev
,
В качестве двух примеров для простого теста, когда используется команда curl, примеры команд следующие. Вы можете выбрать один из них и протестировать на своем терминале. Обе команды используют метод POST.
curl -L -H "Authorization: Bearer ### access token ###" -d "key=value" "https://script.google.com/macros/s/#####/dev"
или же
curl -L -d "key=value" "https://script.google.com/macros/s/#####/dev?access_token=### access token ###"
- Для доступа к конечной точке
https://script.google.com/macros/s/###/dev
из развернутых веб-приложений необходимо использовать токен доступа. - замещать
### access token ###
к значению, полученномуScriptApp.getOAuthToken()
, - замещать
https://script.google.com/macros/s/#####/dev
к вашей конечной точке, полученной путем развертывания веб-приложений. - я использовал
-d "key=value"
для почтового метода. Если вы не хотите указывать значения, замените-d ""
,
Замечания:
- Если ошибка, связанная с областями действия, возникает при тестировании вышеприведенной команды, добавьте следующий комментарий. К этому, сфера
https://www.googleapis.com/auth/drive
добавлен.// DriveApp.getFiles();
- После добавления, пожалуйста, запустите функцию
getOAuthToken1()
снова. Посредством этого можно получить токен доступа, включая область действия.