You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复Microsoft Graph People查询中的无效URL过滤错误?

修正Microsoft Graph API查询以获取特定用户邮箱信息

问题原因

你的查询错误使用了/me/people端点,这个端点用于获取当前用户的联系人或相关人员,而非组织内的Azure AD用户。该端点不支持对userPrincipalName字段使用endsWith过滤,这是导致ErrorInvalidUrlQueryFilter错误的核心原因。

修正后的查询

应该使用/users端点来查询组织内的用户,同时调整参数并添加必要的请求头:

请求URL

https://graph.microsoft.com/v1.0/users?$search="displayName:Jane Doe"&$select=displayName,scoredEmailAddresses,userPrincipalName&$count=true&$filter=endsWith(userPrincipalName, '@something.com')

必要请求头

发送请求时必须包含以下两个头信息:

  • ConsistencyLevel: eventual:支持$search与$filter结合使用,同时启用$count
  • Authorization: Bearer {你的访问令牌}:身份验证令牌

关键修正点

  • 替换端点:将/me/people改为/users,这是查询组织内用户的正确端点
  • 完善$search语法:明确指定搜索字段displayName,同时确保空格被正确编码(工具通常会自动处理,但手动编写时需注意)
  • 添加请求头:ConsistencyLevel: eventual是使用$search+$filter+$count组合的必要条件

验证说明

在Graph Explorer中测试时,需确保:

  1. 已登录具有用户读取权限的账号
  2. 在"请求头"选项卡中添加ConsistencyLevel: eventual
  3. 执行GET请求即可返回符合条件的用户数据

内容的提问来源于stack exchange,提问作者tlockhart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 03:15:57