Outlook API:尝试发送草稿时收到 'ErrorIrresolvableConflict'

Outlook API: Receiving 'ErrorIrresolvableConflict' when trying to send Draft

尝试发送草稿时,我收到错误消息:

"ErrorIrresolvableConflict","message":"无法执行发送或更新操作,因为请求中传递的更改键与项目的当前更改键不匹配。, 项目无法执行保存时发现冲突,无法保存

在沙盒中尝试时,消息似乎会稍后发送。

我通过在创建草稿和发送草稿之间插入超时来解决这个问题。本质上,竞争条件问题。

在使用 office365 发送电子邮件时,添加了以下代码以获取搜索键以在将来使用时获取线程 ID(如果未生成线程 ID),此代码会出错 - "The send or update operation could not be performed because the change key passed in the request does not match the current change key for the item",如果我附加更大的文件大小超过 3 MB。

FileAttachment fileAttachment = new FileAttachment( "C:\send_files\100 Percent 
Automated Support - NCUCCC.pdf" );// 4.6MB file attached
AttachmentId attachmentId = service.createAttachment( fileAttachment, messageId );
messageId.setChangeKey( attachmentId.getRootItemChangeKey() );

FileAttachment fileAttachment1 = new FileAttachment( "C:\send_files\getting-started-with-hadoop-planning-guide.pdf" );// 3.1MB file attached
AttachmentId attachmentId1 = service.createAttachment( fileAttachment1, messageId );


messageId.setChangeKey( attachmentId1.getRootItemChangeKey() );
messageFromDrafts = service.getMessage( messageId );
searchKey = messageFromDrafts.getSearchKey();
service.send( messageId );

下面的代码可以很好地发送带有较大文件附件的电子邮件。所以最好使用此代码发送带有更大文件附件的电子邮件。

ItemInfoResponse response = service.send( messageId );

文件大小低于 3 MB,因为附件没有任何问题

CalendarItem.changekey 在创建日历条目之间的某处更改为编辑日历条目。 我对主题使用过滤器并再次获取 CalendarItem 并对其进行编辑