【已解决】 用 retrofit 请求后台给的 Content-Type: multipart/form-data 类型的接口
首先,后台给的接口是没问题的,参数:keyword,cid1,cid2,参数有值返回符合参数的数据,无值返回所有数据

因为后台用的是 Content-Type: multipart/form-data 类型的接口

所以我用的是 @Multipart
@Multipart
@POST("api/script/scriptlist")
Call<TechSearchDetail> getTechSearchDetail(@Part("keyword") RequestBody keyword, @Part("cid1") RequestBody cid1, @Part("cid2") RequestBody cid2);
请求
RequestBody requestBody1 = RequestBody.create(MediaType.parse("multipart/form-data"), "keyword");
RequestBody requestBody2 = RequestBody.create(MediaType.parse("multipart/form-data"), "cid1");
RequestBody requestBody3 = RequestBody.create(MediaType.parse("multipart/form-data"), "cid2");
Call<TechSearchDetail> task = api.getTechSearchDetail(requestBody1, requestBody2, requestBody3);
task.enqueue(new Callback<TechSearchDetail>() {。。。}
请求成功 code=200,但数据为空,这不是我在意的重点,之前忘记怎么写的可以请求到数据,但改变参数没用,返回的还是全部数据,@FormUrlEncoded 请求我也用过
@FormUrlEncoded
@POST("api/script/scriptlist")
Call<TechSearchDetail> getTechSearchDetail(@Field("keyword") String keyword, @Field("id1") String id1, @Field("id2") String id2);
请求
Call<TechSearchDetail> task = api.getTechSearchDetail(keyword,cid1,cid2);
task.enqueue(new Callback<TechSearchDetail>() {。。。}
请求成功,并且有数据,但改变参数还是没有,求大神指导,多个参数怎么请求(我用的是 retrofit)
查到 multipart/form-data 多用于上传文件,要不要去怼一下后端!!!
这应该是个古老的程序员吗?要么就是年轻的程序员学的是以前的东西那些技术。用表单提交数据是因为以前的前端提交内容直接用form表单。现在流行前后端分离,一般用json进行数据交互。至于它这么写,你还是可以做的呀。另外则是你的表达,实在看不懂哇。
请求成功 code=200,但数据为空,这不是我在意的重点,之前忘记怎么写的可以请求到数据,但改变参数没用,返回的还是全部数据。
这些话没明白你表达的是啥。
请求成功,并且有数据,但改变参数还是没有。这话也没看懂是什么意思呢?