@Query 在 Retrofit2 中不起作用
@Query doesn't work in Retrofit2
我已经使用 Retrofit 库来执行 POST
、GET
等操作。
当我在 POST
方法中一起使用 Body 、 Query 和 Path 时,Query 被编译器忽略,它不起作用!
这是我界面中的代码
@Headers("Content-Type: application/json")
@POST("video/{id}/comments/")
Call<VideoCommentsModel> videoGetCommentsModelCall(
@Body VideoArgs videoArgs,
@Query("page") int page,
@Path(value = "id", encoded = true) int id_
);
我的代码有什么问题?
我找到了解决办法!
如果 Path 和 Query 在一起,path 应该在 [=15 之前=]查询 !
@Headers("Content-Type: application/json")
@POST("video/{id}/comments/")
Call<VideoCommentsModel> videoGetCommentsModelCall(
@Body VideoArgs videoArgs,
@Path(value = "id", encoded = true) int id_,
@Query("page") int page
);
试试这个,
@Headers("Content-Type: application/json")
@POST("video/{id}/comments")
Call<VideoCommentsModel> videoGetCommentsModelCall(
@Body VideoArgs videoArgs,
@Path(value = "id", encoded = true) int id_,
@Query("page") int page
);
从路径末尾删除“/”。
我已经使用 Retrofit 库来执行 POST
、GET
等操作。
当我在 POST
方法中一起使用 Body 、 Query 和 Path 时,Query 被编译器忽略,它不起作用!
这是我界面中的代码
@Headers("Content-Type: application/json")
@POST("video/{id}/comments/")
Call<VideoCommentsModel> videoGetCommentsModelCall(
@Body VideoArgs videoArgs,
@Query("page") int page,
@Path(value = "id", encoded = true) int id_
);
我的代码有什么问题?
我找到了解决办法!
如果 Path 和 Query 在一起,path 应该在 [=15 之前=]查询 !
@Headers("Content-Type: application/json")
@POST("video/{id}/comments/")
Call<VideoCommentsModel> videoGetCommentsModelCall(
@Body VideoArgs videoArgs,
@Path(value = "id", encoded = true) int id_,
@Query("page") int page
);
试试这个,
@Headers("Content-Type: application/json")
@POST("video/{id}/comments")
Call<VideoCommentsModel> videoGetCommentsModelCall(
@Body VideoArgs videoArgs,
@Path(value = "id", encoded = true) int id_,
@Query("page") int page
);
从路径末尾删除“/”。