我正在使用msgraph api,并且能够发送消息等,但是我希望能够检查新创建消息的状态。发送新邮件时,返回的内容很少,实际上正文为空,并且显示以下状态代码和标头
Success - Status Code 202
client-request-id: 067e8a6e-ca66-450c-bef3-55b61f72a6bb
content-type: text/plain
cache-control: private
request-id: 067e8a6e-ca66-450c-bef3-55b61f72a6bb
是否有一个api调用,您可以在其中获取有关请求状态的信息?因为request-id不属于发送消息标题或推送通知。
还有一个API调用,可让我获取用户有权发送的所有电子邮件地址,以避免发生此类响应
{
"error": {
"code": "ErrorSendAsDenied",
"message": "The user account which was used to submit this request does not have the right to send mail on behalf of the specified sending account., Cannot submit message.",
"innerError": {
"request-id": "50c4d68b-f23b-4f1f-8202-e95220e45628",
"date": "2019-02-21T21:43:57"
}
}
}
答案 0 :(得分:0)
不幸的是,此api不会返回Location标头,该标头带有指向状态资源的链接供您监视。但是,可以通过轮询“已发送邮件”文件夹中发送的电子邮件来确定是否已成功发送邮件。
GET https://graph.microsoft.com/v1.0/me/mailfolders/{sent-folder-id}/messages?$filter("subject eq '<sent email subject>'")
您可以从对此的响应中确定“ sent-folder-id”:
GET https://graph.microsoft.com/v1.0/me/mailfolders