Выполнение запроса 'Detect Intent', сделанного через axios (post) в диалоговом потоке, REST API возвращает с кодом состояния 401.
Я передаю «ключ клиента» в качестве носителя авторизации. Этот ключ взят непосредственно из диалогового потока, который помечен как «токен доступа клиента».
Я пытаюсь сделать запросы диалогового потока из моего приложения vue. В настоящее время он обслуживается на локальном хосте: 8080.
Я попытался передать ключ администратора, но безуспешно.
Что мне нужно сделать, чтобы правильно аутентифицировать запрос.
Вот мой метод vue, который пытается отправить запрос через axios:
send() {
var config = {
headers: {
Authorization: "bearer XXXXX_Client_API_Key"
}
};
var payload = {
// session: "projects/agentID-XXXX/agent/sessions/" + this.currentUser,
queryParams: {
resetContexts: true
},
queryInput: {
text: {
text: this.newMessage,
languageCode: "en-US"
}
}
};
var url =
"https://dialogflow.googleapis.com/v2/projects/agentID-XXX/agent/sessions/" +
this.currentUser +
":detectIntent";
if (this.newMessage) {
axios
.post(url, payload, config)
.then(response => {
console.log(response.queryResult.fulfillmentTest);
})
.catch(error => {
console.error(error);
});
}
}
Ожидаемые результаты позволят диалоговому потоку вернуть объект ответа. В настоящее время он получает запрос, но отказывается из-за неправильной авторизации.