UrlFetchApp.Fetch возвращает статус 200, но веб-приложение Google script не работает - PullRequest
0 голосов
/ 04 марта 2019

Я сделал две таблицы Google.Один - родительский лист, а другой - дочерний лист, который импортирует данные из родительского листа.Эти данные импортируются с использованием отдельного сценария приложения Google, который публикуется как веб-приложение для запуска под именем «Я», единственного человека, который имеет доступ к родительскому листу.(Это требование проекта не делить родительский лист с другими пользователями. Кроме того, у меня есть защищенный дочерний лист, за исключением одного столбца, который может редактировать другой пользователь. И если я не запускаю сценарий от своего имени, он будет работать от имени того пользователя, который затемполучает ошибку «невозможно редактировать защищенные ячейки», так как скрипт запускается как он, в противном случае)

Теперь проблема в том, что когда я запускаю это веб-приложение, посещая его URL (exec) с помощью Chrome, оно работает нормально и получает данныедетский лист.Но когда я делаю то же самое, используя UrlFetchApp.Fetch в моем скрипте, привязанном к дочернему листу, он дает код ответа 200, но не импортирует никаких данных!

Почему?Чего мне не хватает?Пожалуйста, помогите.

1 Ответ

0 голосов
/ 04 марта 2019

К счастью, я сам нашел решение.Отсутствующая ссылка - это заголовок канала OAuth, который должен быть передан вместе с запросом на выборку.Кроме того, раньше я использовал doGet в своем веб-приложении, но теперь использую вместо него doPost, и он отлично работает!

Итак, в итоге нужно передать OAuth в качестве носителя в заголовке и не забудьте снова опубликовать ваше веб-приложение.сначала для изменений (если вы не используете режим разработки для разработки).

PS - Проверьте помеченную дублирующую ссылку, которую я разместил на мой вопрос.У него есть код для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...