[ https://issues.apache.org/jira/browse/HTTPCLIENT-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17828072#comment-17828072 ]
Julian Reschke commented on HTTPCLIENT-2325: -------------------------------------------- > No, it is not. It is defined by `Content-Transfer-Encoding` and can be binary. Note that this is specific to form-data, it is not an HTTP header field (and no, you did not say this). That said, you are right. When I wrote my comments I was thinking about "application/x-www-form-urlencoded" which of course is a different beast. > Avoid adding "; charset=" for multipart/form-data requests > ---------------------------------------------------------- > > Key: HTTPCLIENT-2325 > URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2325 > Project: HttpComponents HttpClient > Issue Type: Improvement > Components: HttpClient (classic) > Affects Versions: 4.5.14 > Reporter: Vladimir Sitnikov > Priority: Major > Fix For: 5.4-alpha3 > > Time Spent: 1h 50m > Remaining Estimate: 0h > > Currently, HttpClient adds {{; charset=}} to {{multipart/form-data}} which > both > 1) Breaks certain HTTP servers: see > https://github.com/apache/jmeter/pull/6251, > https://github.com/akka/akka-http/issues/338 > 2) Does not follow RFC 2046 and RFC 7578 > Even though including "charset" parameter is not explicitly forbidden by > RFCs, there are known HTTP servers that can't parse such requests, so why > generating the "charset=..." for multipart/form-data in the first place? > See how RFC 7578 suggests setting the default charset: > https://datatracker.ietf.org/doc/html/rfc7578#section-5.1.2 > They mention a {{_charset_}} field instead. > ---- > Unfortunately, removal of {{multipartEntityBuilder.setCharset(charset);}} in > the caller's code is not enough as HttpClient uses the supplied charset in > {{HttpBrowserCompatibleMultipart}}. > --- > I suggest to avoid sending {{charset}} within {{multipart/form-data}} header, > so it includes only {{boundary}} just like RFC 7578 samples. > In other words, I suggest removing these lines: > https://github.com/apache/httpcomponents-client/blob/54900db4653d7f207477e6ee40135b88e9bcf832/httpmime/src/main/java/org/apache/http/entity/mime/MultipartEntityBuilder.java#L215-L217 -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@hc.apache.org For additional commands, e-mail: dev-h...@hc.apache.org