我已经编写了一个应用程序,可以通过一个小型控制台应用程序自动从我们的系统发送邮件,该应用程序我已经设计为在azure中作为webjob运行。该应用程序发送邮件非常好,直到我尝试添加一个attatchments集合。参考https://msdn.microsoft.com/office/office365/APi/mail-rest-operations#Createandsendmessages 我尝试使用包含单个对象的Attatchments集合为此发送示例代码
super.build_phase(phase)
然而,在此api请求被拒绝后出现错误:
{
"@odata.type": "#Microsoft.OutlookServices.FileAttachment",
"Name": "menu.txt",
"ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
}
此外,在Outlook服务支持热线上花了半个小时的时间去看看一些论坛,并阅读我一直在使用的文章作为参考,因为我开始了我已经投入的项目毛巾。如果有人可以帮助我让这个api接受请求,我会永远感激。
这是示例请求的样子。
{"error":{"code":"RequestBodyRead","message":"The property 'ContentBytes' does not exist on type 'Microsoft.OutlookServices.Attachment'. Make sure to only use property names that are defined by the type."}}
我知道消息对象有一个HasAttachments的bool标志,当设置为true时不会影响调用的结果。
答案 0 :(得分:1)
根据错误消息,您使用了“ Microsoft.OutlookServices.FileAttachment ”的“ Microsoft.OutlookServices.Attachment ”内容。
当我使用'Microsoft.OutlookServices.Attachment'时,我可以重现这个问题。 上面使用'Microsoft.OutlookServices.FileAttachment'的示例对我很有用。
请确保您使用' Microsoft.OutlookServices.FileAttachment '发送文字附件。