Я пытаюсь использовать Microsoft Teams WebHook для отправки уведомления, когда пользователь отправляет ошибку в моем приложении Vue.js, но у меня возникает ошибка CORS...
Вот мой код:
const webhookUrl =
"https://outlook.office.com/webhook/XXX";
const card = {
"@type": "MessageCard",
"@context": "https://schema.org/extensions",
summary: "New bug",
sections: [
{
activityTitle: "A <b>bug</b> has been submitted!",
},
{
title: "Details:",
facts: [
{
name: "Name",
value: this.bug.author,
},
{
name: "Description",
value: this.bug.content,
},
],
},
],
};
Axios.post(webhookUrl, card, {
headers: {
Accept: "application/json",
"content-type":
"application/vnd.microsoft.teams.card.o365connector",
},
})
.then(() => {
this.$toasted.succes("Thanks for helping us !");
})
.catch((e) => {
console.info(e);
this.$toasted.error(
"There was an error while trying to submit your bug"
);
});
Где «XXX» — мой код WebHook, он отлично работает при выполнении POST-запроса с помощью Postman.
Заранее спасибо за вашу помощь !
Я не знаю навскидку, какие разрешенные источники установлены для веб-перехватчиков Teams, но я не удивлен, что это не разрешает прямую публикацию с вашей собственной веб-страницы прямо на веб-перехватчик. Лучший подход для этого — вызвать сам веб-перехватчик из вашего собственного API. Если у вас уже есть такое приложение для этого веб-приложения, просто добавьте возможность вызова веб-перехватчика Teams. Если у вас нет существующего API, вам нужно добавить его, но это довольно просто практически во всех веб-фреймворках.