如何使用原始正文发送 GET 请求 json - retrofit2

How to send GET request with raw body json - retrofit2

我有一个带有 GET 方法和原始主体 json 的 Web 服务,如下所示:

但是我的函数显示错误:

@GET("/api/Sliders")
Call<SliderModel> Sliders(@Field("Page") String Page,
                          @Field("Count") String Count,
                          @Field("Cat") String Cat);

我的错误:

 @Field parameters can only be used with form encoding. (parameter #1)

关注这个

先创建一个JavaClassSliderModel.java

之后做这个。

public interface ApiInterface {

    @GET("/api/Sliders")
    Call<SliderModel> getPosts();


}

看看这个,让我知道这是否适合你,不久前我使用了自定义动词,这可能会有帮助。

interface ApiService {
    @HTTP(method = "GET", path = "/path", hasBody = true)
    fun get(body: RequestBody)
}

调用您的 API 传递 RequestBody 时:

RequestBody.create(MediaType.parse("media-type"), "content")

Media Types


顺便说一下,最好切换到 POST 或自定义动词。使用 GET 不是一个好主意。