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

如何在Retrofit API调用中使用参数实现不同的接口查询需求

正确的Retrofit参数配置方案

你当前的写法存在两个核心问题:

  • 需要传入的Slytherin属于路径占位参数,不是?拼接的查询参数,不能用@Query注解
  • @Query("/")的配置不符合路径参数的传递规则,会导致请求地址拼接错误

修正后的代码实现

// 用{house}作为路径占位符标记参数位置
@GET("api/characters/house/{house}")
suspend fun getAllHouse(@Path("house") search: String ): House

调用时直接传入对应学院名即可,比如传Slytherin时,Retrofit会自动拼接出你需要的目标请求地址:http://hp-api.herokuapp.com/api/characters/house/Slytherin

额外注意事项

  • 如果该接口返回的是对应学院下的多个角色列表,建议将返回类型改为List<House>避免解析报错
  • 确保传入的学院名拼写、大小写和官方要求一致,避免请求404

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 09:15:03