java.lang.IllegalArgumentException: URL 查询字符串不能有替换块
java.lang.IllegalArgumentException: URL query string must not have replace block
我正在使用 Retrofit 和 GET 请求:
@GET("Master/GetConsignerPartyList?prefix={claimId}")
Observable<ConsignerPartyResponse> consignerPartyReq(@HeaderMap Map<String, String> headers, @Path("claimId") String search);
并出现此错误:
java.lang.IllegalArgumentException: URL query string "prefix={claimId}" must not have replace block. For dynamic query parameters use @Query.
怎么了?
claimId
是您在 URL - ?prefix={claimId}"
中设置的查询的一部分
@Path
替换路径中的占位符,即 @GET("Master/{claimId}/")
.
要在查询中替换只需使用 @Query("claimId")
:
@GET("Master/GetConsignerPartyList?prefix={claimId}")
Observable<ConsignerPartyResponse> consignerPartyReq(
@HeaderMap Map<String, String> headers,
@Query("claimId") String search);
从您的 url 中删除 ?prefix={claimId} 因为查询名称在 url.
中不应是静态的
@GET("Master/GetConsignerPartyList")
Observable<ConsignerPartyResponse> consignerPartyReq(
@HeaderMap Map<String, String> headers,
@Query("prefix") String search);
它会起作用:-)
我正在使用 Retrofit 和 GET 请求:
@GET("Master/GetConsignerPartyList?prefix={claimId}")
Observable<ConsignerPartyResponse> consignerPartyReq(@HeaderMap Map<String, String> headers, @Path("claimId") String search);
并出现此错误:
java.lang.IllegalArgumentException: URL query string "prefix={claimId}" must not have replace block. For dynamic query parameters use @Query.
怎么了?
claimId
是您在 URL - ?prefix={claimId}"
@Path
替换路径中的占位符,即 @GET("Master/{claimId}/")
.
要在查询中替换只需使用 @Query("claimId")
:
@GET("Master/GetConsignerPartyList?prefix={claimId}")
Observable<ConsignerPartyResponse> consignerPartyReq(
@HeaderMap Map<String, String> headers,
@Query("claimId") String search);
从您的 url 中删除 ?prefix={claimId} 因为查询名称在 url.
中不应是静态的@GET("Master/GetConsignerPartyList")
Observable<ConsignerPartyResponse> consignerPartyReq(
@HeaderMap Map<String, String> headers,
@Query("prefix") String search);
它会起作用:-)