gpt4 book ai didi

c# - Outlook Rest API 发送带附件的邮件

转载 作者:太空宇宙 更新时间:2023-11-03 12:44:54 24 4
gpt4 key购买 nike

我编写了一个应用程序,它通过一个小型控制台应用程序自动从我们的系统发送邮件,我设计该应用程序作为 Web 作业在 Azure 中运行。在我尝试添加附件集合之前,该应用程序可以完美地发送邮件。引用https://msdn.microsoft.com/office/office365/APi/mail-rest-operations#Createandsendmessages我试图通过我的 Attatchments 集合发送他们的示例代码,其中包含一个看起来像这样的单个对象

{
"@odata.type": "#Microsoft.OutlookServices.FileAttachment",
"名称": "菜单.txt",
"ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
}

但是,在这个 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."}}

此外,我还花了半个小时在 outlook 服务支持热线上,去看看一些论坛,并阅读了自从我开始我已经放弃的项目以来一直用作引用的文章。如果有人可以帮助我让这个 api 接受请求,我将永远感激不已。

这是示例请求的样子。

POST https://outlook.office.com/api/v2.0/me/sendmail
{
"Message": {
"Subject": "Meet for lunch?",
"Body": {
"ContentType": "Text",
"Content": "The new cafeteria is open."
},
"ToRecipients": [
{
"EmailAddress": {
"Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
}
}
],
"Attachments": [
{
"@odata.type": "#Microsoft.OutlookServices.FileAttachment",
"Name": "menu.txt",
"ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
}
]
},
"SaveToSentItems": "false"
}

而且我知道消息对象有一个 HasAttachments 的 bool 标志,当设置为 true 时不会影响调用的结果。

最佳答案

根据错误消息,您使用的是“Microsoft.OutlookServices.Attachment”而不是“Microsoft.OutlookServices.FileAttachment”。

我也可以在使用“Microsoft.OutlookServices.Attachment”时重现此问题。上面使用“Microsoft.OutlookServices.FileAttachment”的示例对我来说效果很好。

请确保您使用的是“Microsoft.OutlookServices.FileAttachment”来发送文本附件。

关于c# - Outlook Rest API 发送带附件的邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37677479/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com