2
0
mirror of https://github.com/tenrok/axios.git synced 2026-06-23 20:40:40 +03:00

Merge pull request #13 from mathbruyen/utf8_content_length

Handle UTF-8 multibyte sequences in node
This commit is contained in:
Matt Zabriskie
2014-09-21 16:00:03 -06:00
+8 -5
View File
@@ -14,10 +14,6 @@ module.exports = function httpAdapter(resolve, reject, config) {
config.transformRequest config.transformRequest
); );
if (utils.isArrayBuffer(data)) {
data = new Buffer(new Uint8Array(data));
}
// Merge headers // Merge headers
var headers = utils.merge( var headers = utils.merge(
defaults.headers.common, defaults.headers.common,
@@ -25,8 +21,15 @@ module.exports = function httpAdapter(resolve, reject, config) {
config.headers || {} config.headers || {}
); );
// Add Content-Length header if data exists
if (data) { if (data) {
if (utils.isArrayBuffer(data)) {
data = new Buffer(new Uint8Array(data));
} else if (utils.isString(data)) {
data = new Buffer(data, 'utf-8');
} else {
return reject(new Error('Data after transformation must be a string or an ArrayBuffer'));
}
// Add Content-Length header if data exists
headers['Content-Length'] = data.length; headers['Content-Length'] = data.length;
} }