okhttp3,retrofit2,android-传递Json

作者: MonkeyLei | 来源:发表于2019-08-14 09:52 被阅读5次

简单记录下一次性传递多条数据的情况,每条数据都是一个对象。之前大部分都是简单参数的传递,没涉及到类似表格提交的那种多个参数。So....

  1. 列表对象转Json字符串

  2. 利用json字符串参数创建RequestBody,然后以RequestBody作为参数提交到后台

嗯,差不多就是这样(DailyDetailAdapterItemBean你自己整就是了):

    List<DailyDetailAdapterItemBean> dailyDetailAdapterItemBeanList = new ArrayList<>();
    for (int i = 0; i < 10; ++i) {
        DailyDetailAdapterItemBean dailyDetailAdapterItemBean = new DailyDetailAdapterItemBean();
        dailyDetailAdapterItemBeanList.add(dailyDetailAdapterItemBean);
    }
    Gson gson = new Gson();
    String obj = gson.toJson(dailyDetailAdapterItemBeanList);
    RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj);                   

然后retrofit2里面增加方法即可传递

//@FormUrlEncoded - @Body标签不能同时和@FormUrlEncoded、@Multipart标签同时使用
@POST   ///< POST方法-Json - 获取数据【对象】
Observable<HttpResponse<String>> postData(@Url String url, @Body RequestBody info);

然后干就完事了....

相关文章

网友评论

    本文标题:okhttp3,retrofit2,android-传递Json

    本文链接:https://www.haomeiwen.com/subject/mqbwjctx.html