java–android @Multipart的改造删除默认标题

java–android @Multipart的改造删除默认标题,第1张

概述发出@Multipart请求会为每个部分添加这些默认标头(Content-Transfer-Encoding,Content-Type),有没有办法删除它们?//REQUESTBODY--25d35373-d2c3-46a3-969f-f5a1fd5f781aContent-Disposition:form-data;name="client_id"Content-Transfer-Encoding:binary<--removethis

发出@Multipart请求会为每个部分添加这些默认标头(Content-transfer-encoding,Content-Type),有没有办法删除它们?

//REQUEST BODY--25d35373-d2c3-46a3-969f-f5a1fd5f781a Content-disposition: form-data; name="clIEnt_ID"Content-transfer-encoding: binary <-- remove this oneContent-Type: application/Json; charset=UTF-8 <-- remove this oneContent-Length: 34"40ccfee680a844780a41fbe23ea89934"//

注意:我无法访问服务器,因此我无法使服务器接受这些标头.

解决方法:

您可以通过这种方式自己构建多部分体(kotlin代码,但同样的想法可以用java表示):

val mpart = Multipartbody.Builder()            .addFormDataPart("param", paramValue)            .addPart(null, someRequestbody).build() // <-- (*) see explanation below//thus, service method should looks like this:@POST("upload/endpoint")fun upload(@Body parts: Multipartbody)

(*) – 这是addPart(headers:headers,reqBody:Requestbody)方法,当你将null传递给头文件时arg会删除除Content-Length之外的所有头文件:

总结

以上是内存溢出为你收集整理的java – android @Multipart的改造删除默认标题全部内容,希望文章能够帮你解决java – android @Multipart的改造删除默认标题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1118363.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存