Skip to content

Commit 6fc1b7a

Browse files
🐛 #3273 【公众号】修复发送文件上传请求时Content-Type没有boundary的问题
1 parent 6311769 commit 6fc1b7a

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

Diff for: weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/requestexecuter/material/MaterialUploadApacheHttpRequestExecutor.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,9 @@ public WxMpMaterialUploadResult execute(String uri, WxMpMaterial material, WxTyp
6060
}
6161

6262
httpPost.setEntity(multipartEntityBuilder.build());
63-
httpPost.setHeader("Content-Type", ContentType.MULTIPART_FORM_DATA.toString());
63+
//手动设置的Content-Type请求头没有boundary,是一个非标准的文件上传请求头,虽然微信提供了对这类非标准请求的支持,但如果请求需要先经过我们的tomcat server,那么都会报错:the request was rejected because no multipart boundary was found
64+
//不设置Content-Type请求头,httpclient将会自动设置,值为entity的getContentType方法返回值。MultipartEntityBuilder的getContentType方法将会返回boundary
65+
//httpPost.setHeader("Content-Type", ContentType.MULTIPART_FORM_DATA.toString());
6466

6567
try (CloseableHttpResponse response = requestHttp.getRequestHttpClient().execute(httpPost)) {
6668
String responseContent = Utf8ResponseHandler.INSTANCE.handleResponse(response);

0 commit comments

Comments
 (0)