我正在调用https://graph.microsoft.com/v1.0/users/{user_id}/messages/
对所有用户消息进行分页。我正在使用应用程序权限进行访问,效果很好。
但是我收到的消息比预期的要多,我不知道为什么。端点是否也可能/messages
包含来自可用于的共享邮箱的消息user_id
?
如果是这样,有什么方法可以抑制它?谢谢。
我正在调用https://graph.microsoft.com/v1.0/users/{user_id}/messages/
对所有用户消息进行分页。我正在使用应用程序权限进行访问,效果很好。
但是我收到的消息比预期的要多,我不知道为什么。端点是否也可能/messages
包含来自可用于的共享邮箱的消息user_id
?
如果是这样,有什么方法可以抑制它?谢谢。
是什么让您觉得收到的消息比预期的多?请注意,它会/messages
返回邮箱中所有文件夹中的所有邮件。
该文档指出,共享消息访问是通过委派权限执行的。使用应用程序权限时,您不应看到共享消息。您的应用程序是否使用Mail.Read.Shared
orMail.ReadWrite.Shared
范围?如果是这样,您应该能够删除它们,并且我希望它不应该具有访问权限。
从微软的已知问题页面:
GET 消息返回 Microsoft Teams 中的聊天
在 v1 和 beta 端点中,GET /users/id/messages 的响应包括在团队或频道范围之外发生的用户的 Microsoft Teams 聊天。这些聊天消息以“IM”为主题。
所以解决方案是忽略所有带有subject == "IM"
.