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

如何使用Retrofit对返回的JSON数据按部门条件过滤查询

按部门过滤员工API响应结果解决方案

场景1:后端接口支持服务端部门查询过滤

你当前传入department参数后仍返回全量数据,优先排查以下问题:

  • 确认查询参数名是否符合后端要求:部分接口可能使用dept、department_id等其他参数名代替department,可查阅接口文档或和后端开发确认参数规则
  • 抓包验证请求参数是否正常携带:检查实际发起的请求URL是否为/users?department=你传入的部门值,确认参数没有被Retrofit拦截器、全局配置等逻辑遗漏
  • 确认参数值规则是否匹配:比如后端要求传入部门中文名而不是back_office这类英文标识,或者参数值大小写敏感,和你传入的内容不匹配

场景2:后端接口不支持服务端过滤,需本地处理

如果确认后端不提供过滤能力,直接在拿到接口响应后对员工列表做本地过滤即可,示例代码如下:

// 发起请求获取全量员工数据
val allWorkers = workersApi.getWorkers(targetDepartment)
// 按指定部门过滤,得到目标员工列表
val filteredWorkerList = allWorkers.items.filter { it.department == targetDepartment }

// 如果需要返回Workers类型的结果,可直接重新封装:
val filteredWorkers = Workers(items = filteredWorkerList)

补充注意:过滤时需注意部门值的大小写、前后空格等匹配问题,若存在前后端返回值格式不统一的情况,可以先做标准化处理(比如统一转小写、trim空格)再匹配,避免过滤遗漏。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 18:45:06