Azure Microsoft Graph $count参数异常:无法获取@odata.count值
解决Microsoft Graph API /users端点无法返回@odata.count的问题
你遇到的问题通常由以下几个常见原因导致,对应解决方法如下:
缺少强制请求头
要获取@odata.count,必须在请求中添加ConsistencyLevel: eventual头。你的代码未设置该头,Graph API不会返回计数字段。修改代码添加请求头:it('should return a count of users', async () => { const initialResponse = await apiInstance.get(`/users?$count=true`, { headers: { 'ConsistencyLevel': 'eventual' } }); console.log(initialResponse); });未指定API版本
Graph API要求指定版本路径(如/v1.0或/beta),你的apiInstance默认地址https://graph.microsoft.com未包含版本信息。确保请求完整路径为https://graph.microsoft.com/v1.0/users?$count=true,若apiInstance未集成版本号,需在请求路径中补充:const initialResponse = await apiInstance.get(`/v1.0/users?$count=true`, { /* 头信息 */ });权限不足或授权不完整
确认你的应用已被授予读取用户列表的权限(如User.Read.All应用权限或User.ReadBasic.All委托权限),且已完成授权流程。权限不足时,API可能返回不包含计数字段的响应。检查响应读取方式
@odata.count通常位于响应体的根层级,确保你正确读取了响应体内容,而非仅打印响应对象的表层结构。
内容的提问来源于stack exchange,提问作者aroe
相关产品推荐
相关产品推荐

