Наиболее вероятная причина в том, что вы не используете вызов функции Promise
или async
, поэтому ваш обработчик ничего не возвращает до завершения вызова API.
Чтобы это исправить,callAPI()
необходимо вернуть Обещание, которое возвращает axios.get()
. Аналогично, ваш обработчик намерений, который вызывает callAPI()
, должен также возвратить это обещание (или другое обещание из блока then()
).
Библиотека Dialogflow требует этого, поэтому она знает, что нужно ждать вызова API длязавершить (и обещание, таким образом, выполнить) перед возвратом чего-либо пользователю.
В вашем случае это так же просто, как изменить вызов на axios.get()
на что-то вроде
return axios.get(apiUrl).then((result) => {
// Rest of this call here