В настоящее время я пишу некоторый код как часть надстройки Outlook с библиотекой office-js.
По сути, после нажатия кнопки «Отправить» мое приложение должно сохранить открытое в настоящий момент сообщение как черновик, а затем выполнить вызов Microsoft Graph API, который может отправить сообщение.
Мой код в настоящее время выглядит примерно так на стороне клиента:
Office.context.mailbox.item.saveAsync(
async function callback(result) {
if (result.status === "succeeded") {
const messageId = result.value
await axios.post("/api/send", {
headers: { "Authorization": "Bearer " + accessToken },
data: {
messageId
}
});
}
else {
console.log(result.error)
}
}
);
А затем на моем сервере я делаю этот вызов API Graph:
const graphData = await fetch(
`https://graph.microsoft.com/v1.0/me/messages/${messageId}/send`,
{
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': 'Bearer ' + graphToken,
'Content-Length': '0'
}
}
);
Thisдо сегодняшнего дня все работало нормально.Однако теперь я вижу, что независимо от того, какое сообщение я нажимаю отправить, я продолжаю видеть один и тот же идентификатор сообщения из моего звонка на Office.context.mailbox.item.saveAsync()
:
// console.log(messageId)
AAMkAGE4ZWVlNjI1LTk3NjAtNDFmYy1hZDhkLTU3ZWY0ZjJiMDk5YgBGAAAAAACghEgqiSFAQo8v+Kh2wPqEBwDoiTH7R3zxTZ+n2OMFzElyAAAAAAEPAADoiTH7R3zxTZ+n2OMFzElyAAAT/OkjAAA=
Я получаю "Неподдерживаемыйтип сегмента. "ошибка в Microsoft Graph, которая, как я полагаю, связана с тем, что идентификатор сообщения не существует.
Я не уверен, как это могло произойти, но я думаю, что это может иметь какое-то отношение к учетной записи, над которой я сейчас работаю.До вчерашнего дня у меня была бесплатная пробная версия MS Office, срок действия которой истек.Сегодня я снова перезапустил свою подписку, но эта ошибка все еще появляется.
Однако, даже до сегодняшнего дня, я получал непредсказуемое поведение с этим шаблоном.Иногда электронное письмо не отправлялось с первой попытки, без явных ошибок, а в других случаях электронное письмо отправлялось, но электронное письмо не исчезало, оставляя перед пользователем висящий черновик.
Я хотел бы услышать любую помощь или предложения по этому вопросу, потому что это вызывает изрядное количество разочарования!