mirror of
https://github.com/axios/axios.git
synced 2026-04-11 14:21:59 +08:00
fix(formdata): fixed content-type header normalization for non-standard browser environments; (#6056)
This commit is contained in:
parent
3dc8369e50
commit
dd465ab22b
@ -66,11 +66,10 @@ export default isXHRAdapterSupported && function (config) {
|
||||
if (utils.isFormData(requestData)) {
|
||||
if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {
|
||||
requestHeaders.setContentType(false); // Let the browser set it
|
||||
} else if(!requestHeaders.getContentType(/^\s*multipart\/form-data/)){
|
||||
requestHeaders.setContentType('multipart/form-data'); // mobile/desktop app frameworks
|
||||
} else if(utils.isString(contentType = requestHeaders.getContentType())){
|
||||
} else if ((contentType = requestHeaders.getContentType()) !== false) {
|
||||
// fix semicolon duplication issue for ReactNative FormData implementation
|
||||
requestHeaders.setContentType(contentType.replace(/^\s*(multipart\/form-data);+/, '$1'))
|
||||
const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];
|
||||
requestHeaders.setContentType([type || 'multipart/form-data', ...tokens].join('; '));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user