gpt4 book ai didi

outlook - 通过 Office365 API 获取按 conversationId 过滤的消息

转载 作者:行者123 更新时间:2023-12-04 12:49:22 24 4
gpt4 key购买 nike

我在弄清楚如何使用 office365 api 获取给定 conversationId 的消息时遇到了一些问题。

假设我的 conversationId 是 AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow=

我会提出这样的请求

https://outlook.office.com/api/v1.0/me/Messages?$filter=ConversationId%20eq%20AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow=

这会导致 400 响应如下:

{
"error": {
"code": "RequestBroker-ParseUri",
"message": "Syntax error at position 98 in 'ConversationId eq AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow='."
}
}

我尝试了其他方法,例如将 conversationId 编码为 AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow%3D 的 url,这会导致相同的错误。

我还尝试简单地删除 = ,它似乎是吓坏了它的角色

https://outlook.office.com/api/v1.0/me/Messages?$filter=ConversationId%20eq%20AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow

但这会导致以下错误

{
"error": {
"code": "RequestBroker-ParseUri",
"message": "Could not find a property named 'AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow' on type 'Microsoft.OutlookServices.Message'."
}
}

我也试过弄乱 url 大写并使用 + 符号而不是 %20 作为过滤器字符串,但我总是返回 400 错误。

不过我可以按其他字段进行过滤。例如

https://outlook.office.com/api/v1.0/me/Messages?$filter=IsRead%20eq%20true

按我的预期返回经过过滤的消息。

知道 ConversationId 过滤器会发生什么吗?

最佳答案

您需要用单引号将 ConversationId 括起来。这就是我在 C# 中伪造请求的方式

string finalUrl = "https://outlook.office.com/api/beta/me/Messages?$filter=" + HttpUtility.UrlEncode(string.Format("ConversationId eq '{0}'", conversationId));

关于outlook - 通过 Office365 API 获取按 conversationId 过滤的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41125652/

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