gpt4 book ai didi

java - 改造 android @Multipart 删除默认 header

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:14:14 26 4
gpt4 key购买 nike

发出@Multipart 请求会为每个部分添加这些默认 header (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 one
Content-Type: application/json; charset=UTF-8 <-- remove this one
Content-Length: 34
"40ccfee680a844780a41fbe23ea89934"
//

注意:我无权访问服务器,因此我无法让服务器接受这些 header 。

最佳答案

您可以通过这种方式自己构建多部分主体(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 传递给 headers arg 时,这将删除除 内容长度:

关于java - 改造 android @Multipart 删除默认 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39846958/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com