Outlook - 使用 javascript 获取消息 ID?

Outlook - get message id with javascript?

我昨天提了一个问题,要求从outlook邮件中获取“id”URL,像这样:

https://outlook.live.com/mail/0/inbox/id/AQQkADAwATM0MDAAMS0xZGUwLTNjMTAtMDACLTAwCgAQAB%2FnQ1lgT6dDlqIakp3j4qk%3D

但出于某种原因,结果证明那不是消息 ID。

有什么方法可以通过 javascript 获取实际的消息 ID? 我正在使用它与 Microsoft Graph api 进行交互。 Have a look here to see what i'm trying to do.

消息 ID 是您使用 List Messages 获得的任何消息的 ID。 Graph API 遵循 REST API 设计。我建议你通过 Graph 做资源导航。不要从 outlook 客户端复制 id 并在 Graph 上使用。

列出消息:

GET https://graph.microsoft.com/v1.0/me/messages
{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('bb8775a4-4d8c-42cf-a1d4-4d58c2bb668f')/messages(sender,subject)",
    "value": [
        {
            "@odata.etag": "W/\"CQAAABYAAADHcgC8Hl9tRZ/hc1wEUs1TAAAwR4Hg\"",
            "id": "AAMkAGUAAAwTW09AAA=",
            "subject": "Welcome to our group!",
            ...
        }
    ]
}

然后收到一条消息:

GET https://graph.microsoft.com/v1.0/me/messages/AAMkAGUAAAwTW09AAA=
{
    "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users('cd209b0b-3f83-4c35-82d2-d88a61820480')/messages(subject,body,bodyPreview,uniqueBody)/$entity",
    "@odata.etag":"W/\"CQAAABYAAABmWdbhEgBXTophjCWt81m9AAAoZYj4\"",
    "id":"AAMkAGUAAAwTW09AAA=",
    "subject":"Welcome to our group!",
    "bodyPreview":"Welcome to our group, Dana!",
    ...
}

已修复!

GET https://graph.microsoft.com/v1.0/me/messages
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('bb8775a4-4d8c-42cf-a1d4-4d58c2bb668f')/messages(sender,subject)",
"value": [
    {
        "@odata.etag": "W/\"CQAAABYAAADHcgC8Hl9tRZ/hc1wEUs1TAAAwR4Hg\"",
        "id": "AAMkAGUAAAwTW09AAA=",
        "subject": "Welcome to our group!",
        ...
    }
]
}

获取消息列表,对于每条消息,如果 conversationID 与 outlook ID 匹配(用 / 替换为 -)那么就是电子邮件