网络请求框架封装

来源:6-4 post请求构造

kmmoonlight

2019-09-03

在封装post请求的时候,用的RequestParams类里面维护的Map,之后在往FormBody.Builder里面添加参数的时候,这只能进行K-V类型的POST请求, 并不能完成JSON格式传参,封装的不是很充足

写回答

1回答

kmmoonlight

提问者

2019-09-03

if (params != null) {
    for (Map.Entry<String, Object> entry : params.fileParams.entrySet()) {
        if (entry.getValue() instanceof File) {
            requestBody.addPart(Headers.of("Content-Disposition", "form-data; name=\"" + entry.getKey() + "\""),
            RequestBody.create(FILE_TYPE, (File) entry.getValue()));
        } else if (entry.getValue() instanceof String) {

            requestBody.addPart(Headers.of("Content-Disposition", "form-data; name=\"" + entry.getKey() + "\""),
            RequestBody.create(null, (String) entry.getValue()));
        }
    }
}

下面这个转为 json  的时候  给的 MediaType 是 null, 实际上应该是 application/json 

1
1
qndroid
赞,写的有点问题。
2019-09-03
共1条回复

企业级Android架构设计+功能开发

掌握企业级架构设计、功能开发,提升个人能力层次

1236 学习 · 274 问题

查看课程