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

时间:2017-03-29 22:13:12

标签: outlook outlook-api

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

“ErrorIrresolvableConflict”,“message”:“无法执行发送或更新操作,因为请求中传递的更改密钥与项目的当前更改密钥不匹配。由于检测到冲突,无法保存项目保存时。

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

3 个答案:

答案 0 :(得分:2)

我通过在创建工艺和发送草稿之间插入超时来修复此问题。基本上,竞争条件问题。

答案 1 :(得分:0)

在使用office365发送电子邮件时,添加了以下代码以获取searchkey以便将来使用(如果未生成线程id),该代码给出了错误-“由于更改,无法执行发送或更新操作如果我附加的文件大于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,因为附件没有出现任何问题

答案 2 :(得分:0)

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