Я создал Google Script и опубликовал его как веб-приложение, очень похоже на то, что в этом посте есть .
Однако я хотел бы назвать мой чрезвычайно простой метод doGet
используя Почтальон. Веб-приложение опубликовано с анонимным доступом и разрешением на выполнение от меня.
Я ожидал, что смогу вставить URL-адрес в Почтальон, установить глагол GET
и нажать Send
- и увидеть то же самоерезультат вижу в браузере. Я не знаю.
Что я делаю не так?
[ОБНОВЛЕНИЕ] Ответ на комментарий от themaster
Я создал Google Apps Script
с именем devices
в моем Google Диске. Я добавил эту функцию:
function doDelete(e) {
return HtmlService.createHtmlOutput('{"test":"yes"}');
}
Простой, я знаю, но должен ответить на DELETE
запрос:
{
"test": "yes"
}
Затем я нажимаю Save
, а затемDeploy
> Publish as web app...
со следующими параметрами:
- Версия проекта: новая
- Запустите приложение как: me
- У кого есть доступ: Любой, дажеанонимный
Я нажимаю Update
и получаю URL-адрес, подобный следующему:
https://script.google.com/macros/s/ABcdefgHInmLDGiHmpGmXkXIxMjsh0s61sKZ9ov6OOSpkb--1quTtfM/exec
Если функция называется doGet
и я вставляю URL-адресв браузере я вижу этот JSON, упомянутый выше.
Если я оставлю функцию с именем doDelete
и сделаю DELETE
запрос от Почтальона, я получу следующее:
Не удалось получить ответ. При подключении к https://script.google.com/macros/s/ABcdefgHInmLDGiHmpGmXkXIxMjsh0s61sKZ9ov6OOSpkb--1quTtfM/exec. произошла ошибка. Почему это могло произойти: серверу не удалось отправить ответ. Убедитесь, что сервер работает правильно. Самоподписанные сертификаты SSL блокируются. Исправьте этоотключив «Подтверждение SSL-сертификата» в меню «Настройки»> «Общий прокси-сервер неправильно настроен». Правильно настроено в Настройках> Время ожидания запроса прокси: Изменить время ожидания запроса в Настройках> Общие
Если я изменю функцию на doGet
, перепубликую и вызову ее с запросом GET
от Почтальона, получаютот же результат.
[РЕДАКТИРОВАТЬ] Уточнение
Если я позвоню Почтальону, используя GET
, и настрою функцию doGet
для вызова веб-крючка IFTTTпаутина срабатывает. Я также могу запустить его с помощью запросов doPost
и POST
в Postman.
Однако, если я использую doDelete
с запросом DELETE
в Postman, веб-крючок IFTTT не будет вызван.
Независимо от глагола, используемого в Почтальоне, я не получаю ответ - только сообщение, указанное выше.
[ПРАВИТЬ] Ответ на @ sourabh-choraria вопрос
Мой код в настоящее время просто так:
function doGet(e) {
return HtmlService.createHtmlOutput('{"valid":"no"}');
}
Публикуется с процессом, описанным выше, я получаю это при звонке с почтальоном:
Could not get any response
Я делаю этот запрос как GET
без заголовков.