【问题标题】:Apache HttpClient include boundary in multipart/form-dataApache HttpClient 在 multipart/form-data 中包含边界
【发布时间】:2018-08-06 06:57:38
【问题描述】:

我有以下应该上传文件的 POST 请求。但我不知道如何在“Content-Type”标头的请求中包含边界。

HttpPost request = new HttpPost(url);
request.setConfig(config);

StringEntity params = new StringEntity("");

HttpEntity entity = MultipartEntityBuilder.create()
        .addBinaryBody("blob", file, ContentType.create("application/octet-stream"), "filename").build();

request.addHeader("Host", "upload.twitter.com");
request.addHeader("Connection", "keep-alive");
request.addHeader("User-Agent", userAgent);
request.addHeader("Content-Type",  ????????);
request.addHeader("Accept", "*/*");
request.addHeader("Accept-Encoding", "gzip, deflate, br");
request.addHeader("Accept-Language", "en-US,en;q=0.9");
request.addHeader("Cookie", cookies);

request.setEntity(entity);
response = httpClient.execute(request);

int responseCode = response.getStatusLine().getStatusCode();

System.out.println("upload response code: " + responseCode);

知道这是怎么做到的吗?

【问题讨论】:

    标签: httpclient apache-httpclient-4.x apache-httpcomponents


    【解决方案1】:

    它看起来像这样:

    应用程序/八位字节流;边界="----=_Part_7_1666975968.1525905116062"

    在 HTTP1.0 中,您可以在 ";" 之后立即使用 \r\n以最小化行长,但在 HTTP1.1 中不允许标题折叠。

    【讨论】:

      猜你喜欢
      • 2017-10-11
      • 2021-11-21
      • 2017-01-14
      • 2016-09-08
      • 1970-01-01
      • 2013-09-06
      • 2015-08-27
      • 2011-07-28
      • 1970-01-01
      相关资源
      最近更新 更多