问题描述
我正在尝试通过sessionId进行过滤以获取邮件和邮件回复,但每次都会收到错误消息:
{
"error": {
"code": "BadRequest","message": "Invalid filter clause","innerError": {
"date": "2020-08-24T23:12:43","request-id": "9d1c128a-d97c-4fc4-97b4-5264e566bef8"
}
}
}
请求路径输出如下:
https://graph.microsoft.com/v1.0/me/messages?$filter=conversationId eq 'AAQkADJkZTNiN2ZlLTg2M2QtNGZjMC1hNDUxLTdlNjgzZDVjZDljMAAQAKVNpsZfVhlEtPFltSQuNJ8='
在Graph Explorer中尝试完全相同的路径时,根本没有问题。
解决方法
由于BASE64字符串不是URI安全的,因此您发送的代码很可能会在发送URL时使用该代码。例如,除非在值浏览器中像这样转义
,否则您的请求在Graph Explorer中对我不起作用(我得到您指出的确切错误)https://graph.microsoft.com/v1.0/me/messages?$filter=conversationId eq 'AAQkADJkZTNiN2ZlLTg2M2QtNGZjMC1hNDUxLTdlNjgzZDVjZDljMAAQAKVNpsZfVhlEtPFltSQuNJ8%3D'
因此,您需要研究应用程序实际通过有线发送的内容。