Как запустить POST-запрос с помощью встроенного редактора в диалоговом потоке? - PullRequest
1 голос
/ 03 мая 2019

Код:

var rp = require('request-promise');
var options = {
                method: 'POST',
                uri: 'http://c663fe13.ngrok.io/ap/lighton',
                body: {"color": 'white'},
                json: true // Automatically stringifies the body to JSON
            };

            rp(options)
                .then(function (parsedBody) {
                    // POST succeeded...+
                    console.log("parsedBody", parsedBody);
                })
                .catch(function (err) {
                    // POST failed...
                    console.log("err", err);
                });

, но это дает мне следующую ошибку:

{RequestError: Ошибка: getaddrinfo EAI_AGAIN c663fe13.ngrok.io:80 в новом RequestError (/srv/node_modules/request-promise-core/lib/errors.js:14:15) в Request.plumbing.callback (/srv/node_modules/request-promise-core/lib/plumbing.js:87:29) при запросе обратного вызова $ .RP [as _callback] (/srv/node_modules/request-promise-core/lib/plumbing.js:46:31)

.,.

name: 'RequestError', сообщение: 'Ошибка: getaddrinfo EAI_AGAIN c663fe13.ngrok.io:80',
причина: {Ошибка: getaddrinfo EAI_AGAIN c663fe13.ngrok.io:80 в GetAddrInfoReqWrap.onlook[as oncomplete] (dns.js: 67: 26) errno: 'EAI_AGAIN', код: 'EAI_AGAIN', системный вызов: 'getaddrinfo', имя хоста: 'c663fe13.ngrok.io', хост: 'c663fe13.ngrok.io', порт: 80},

Я пытаюсь вызвать этот API с почтальоном, и он работает нормально.

1 Ответ

1 голос
/ 03 мая 2019

Если вы используете бесплатную учетную запись, вы не сможете использовать любые сторонние сервисы из облачных функций Firebase. Было бы лучше, если бы вы записали свой собственный код webhook и с помощью выполнения интегрировали этот webhook с вашим агентом Dialogflow, если собираетесь использовать бесплатный аккаунт.

UPDATE Посмотрите фрагменты кода, которыми я поделился здесь . Вы можете использовать это для интеграции ExpressJS, а затем добавить свой POST-код и разместить его локально. Выставьте локальный сервер с помощью ngrok, а затем введите этот URL в исполнение.

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