Могу ли я использовать скрипт Google Apps в качестве конечной точки Asana Webhooks (doPost)?

Я пытаюсь подключить Документы Google к Asana. Я могу создавать задачи из Документов Google и сохранять подключение к базе данных MySql, чтобы отображать задачи в Документе Google.

Теперь мне нужно, чтобы эти задачи постоянно синхронизировались с Asana, поэтому я хотел создать вебхуки Asana. Я создал функцию doPost в скрипте Google Apps. который должен служить конечной точкой. Но когда я инициирую начальное рукопожатие, я не получаю запрос от Asana к моему веб-приложению Google.

Чтобы убедиться, что я все делаю правильно, я также создал рукопожатие на PHP, с которым я более знаком. Единственная проблема, с которой я столкнулся, это сертификат SSL. Но я думаю, что это не должно быть проблемой для Google. Кроме того, мое веб-приложение Google является общедоступным, поэтому никаких ограничений быть не должно (я тестировал его с помощью Почтальон. Я получаю запросы от Почтальона. Чтобы убедиться, что я получаю запрос, я также создал журнал в Документе Google.)

Что я делаю не так?


person Silko    schedule 28.12.2016    source источник
comment
Похоже, это проблема обновления/обновления кода Google Apps Script. Он начал работать через день. Другого объяснения не вижу, потому что ничего не менял в коде, просто повторил тест на рукопожатие через сутки с тем же кодом. Теперь у меня все еще есть проблема с чтением заголовков запроса POST. Я не нахожу способ сделать это в скрипте Google Apps.   -  person Silko    schedule 28.12.2016
comment
Рад слышать, что рукопожатие теперь работает с Asana. Дайте нам знать, если у вас есть какие-либо другие проблемы с ним.   -  person Jeff    schedule 04.01.2017
comment
На самом деле рукопожатие между Asana и Google Apps Script невозможно, потому что нет возможности установить и прочитать заголовки запроса. Я помещу свое исследование в ответ ниже.   -  person Silko    schedule 04.01.2017


Ответы (1)


Короткий ответ:

Сценарий Google Apps нельзя использовать в качестве конечной точки Asana Webhooks.

Длинный ответ:

Вы можете получать почтовые запросы к скрипту Google Apps с помощью функции doPost. Таким образом, первые два шага рукопожатия Asana Webhooks могут быть выполнены. Но нет возможности отправить правильный ответ на третий шаг рукопожатия, потому что вы не можете прочитать заголовки почтового запроса, полученного от Asana, и вы также не можете вернуть заголовки ответа Asana. Вот ответ, который я нашел о чтении и настройке заголовков в скрипте Google Apps.

person Silko    schedule 28.12.2016
comment
Круто - спасибо за подробное исследование! Я добавил это в наш внутренний проект Asana для возможностей API; возможно, если мы обнаружим, что у достаточного количества людей есть эта проблема, мы можем реализовать рукопожатие немного по-другому, например, отправив и получив ключ рукопожатия в теле запроса рукопожатия. - person Matt; 05.01.2017