microsoft-graph-api - O365 图表,在某些邮箱上下载邮件时出现奇怪错误,而不是全部
问题描述
我有数百名用户使用我的 wpf 应用程序下载 O365 消息(使用 c# Graph SDK),因为在下载消息时,有几个星期的一小部分在 1 个或多个邮箱上出现错误。
c#中Graph sdk返回的错误:ErrorInternalServerError Message: An internal server error occurred。操作失败。ClientRequestId:54e9e307-1a60-4f78-9f8f-5def1c6fb5b5
由于我无法重现我这边的问题,因此很难找到问题,这里有一些信息:
- 一个用户可以有 20 个邮箱,只有 1 或 3 个不再工作
- 问题仅在于下载消息,OAuth 连接工作正常,我可以获得文件夹列表,文件夹中的消息数量,...
- 当用户在 O365 中删除并重新创建邮箱时,它将再次工作
- 如果用户使用 IMAP 而不是 Graph 连接,它可以正常工作!
这是我用来下载 MIME 消息的代码(几个月以来都可以正常工作):
var _request = m_graphClient.Users[m_Account.Server_EmailAddress].Messages[pMessageID].Request().GetHttpRequestMessage();
_request.RequestUri = new Uri(_request.RequestUri.OriginalString + "/$value");
var _response = await m_graphClient.HttpProvider.SendAsync(_request);
我也尝试了同样的结果:
var _responseStream = await m_graphClient.Users[m_Account.Server_EmailAddress].Messages[pMessageID].Content.Request().GetAsync();
这个问题听起来像是 O365 邮箱更新滚动,我有越来越多的用户突然遇到这个问题。
我希望你能指导我找到问题。非常感谢。
解决方案
推荐阅读
- python - 为什么简单的 Python 程序会随着时间的推移而变慢?
- c# - 如何在c#中运行异步代码并返回值?
- c - 为什么scanf将每个字母都读取为39?
- c - 如何找到使随机数序列保持在 C 中的下一个种子?
- css - 有没有办法固定 html 中所有屏幕尺寸和分辨率的环内径尺寸
- rest - REST 文件下载需要 5 分钟才能完成
- c# - 为 Xamarin.Forms 中的按钮选择处理程序或命令的最佳实践
- stored-procedures - 我可以在 Redshift 上的存储过程中将两个查询连接在一起吗?
- swift - 如何在 iOS 9.3 的 Xcode 10.2.1 中存储颜色标签
- git - 无法将新更改从本地 repo 推送到远程 github