【发布时间】:2017-03-22 13:36:21
【问题描述】:
这就是我想要完成的:
首先我使用的是 API 的测试版。
所以我正在使用 /api/beta/me/messages/{message_id}/replyall 和 /api/beta/me/messages/{message_id}/forward 端点。 未设置回复/转发消息的评论。 在请求中发送一条新消息。 此消息包含我希望该消息具有的确切附件。并且消息正文包含整个消息文本(我们构建自己的消息历史记录)。
此请求的结果是创建的回复/转发消息包含我已发送的附件以及我回复/转发的消息中的附件。
在附件下,我指的是内联文件和附加文件。
消息正文构造正确。
我还尝试创建草稿,然后使用以下方法更新该草稿的附件: 补丁 /api/v2.0/me/messages/{message_id} 在文档中说我可以指定“请求正文中的一个或多个可写消息属性”,但由于某种原因它不适用于消息附件。但我想即使它确实适用于附件,它只会添加我发送的附件而不会删除旧的。
那么我可以设置一些参数,以便我可以完成此行为吗?
我尝试向https://outlook.office.com/api/beta/me/messages/{message_id}/createreply 发出请求 然后从返回的草稿消息中删除不需要的附件。这里的问题是此端点不返回附件。我还尝试添加 $expand=attachments 查询,但仍然没有返回任何附件。
【问题讨论】:
-
我有点迷路了。您是否设法将请求发送到 /reply、/replyall 和 /forward 以及其中的附件?我很困惑,如果你这样做了,或者如果那是你想做的,但还没有做到。如果你成功了,你能告诉我你是怎么做到的吗?我一直在尝试找到一个如何回复/转发附件的示例,但到目前为止一无所获……谢谢! :)
-
是的,我设法用附件回复/转发,它适用于一般情况。在其余 api 的 beta 版本中,您还可以在请求正文中发送消息。您的请求应该是 outlook.office.com/api/beta/me/messages{message_id}/reply 因此,如果您将附件添加到此消息中(就像您对 /sendmail 端点所做的那样),它应该可以工作。
-
成功了!非常感谢! :D 你知道在 API 的稳定(非测试版)版本中是否有任何方法可以做到这一点?或者在某个地方我可以找到有关测试版可靠性的信息(或者他们的计划是什么)?再次感谢!
-
另外,关于您尝试删除草稿邮件附件的尝试,如果您向outlook.office.com/api/beta/me/messages{msg_id}/attachments/ 发送 GET,您可以看到该邮件的所有附件。对outlook.office.com/api/beta/me/messages{msg_id}/attachments/{attachment_id} 的后续删除将从邮件中删除该附件。这对你有帮助吗?
-
您几乎回答了自己的问题;)因此,使用当前 API 版本: 1. 创建一个仅包含回复消息正文(评论)的草稿(发布到 /createreply)。这将返回您刚刚创建的消息(显然没有附件)。获取草稿的 id。 2. 使用它来创建您想要此草稿消息的附件。 (发布到 /messages/{message_id}/attachments) 3. 发送草稿消息。
标签: outlook-restapi