2
0
mirror of https://github.com/tenrok/axios.git synced 2026-06-17 19:21:29 +03:00

support node buffers less than 8192 bytes (#773)

This commit is contained in:
Jeremy Fowler
2017-04-08 06:55:34 -05:00
committed by Rubén Norte
parent bbfbeff4bc
commit 188334439f
4 changed files with 40 additions and 2 deletions
+4 -2
View File
@@ -30,13 +30,15 @@ module.exports = function httpAdapter(config) {
}
if (data && !utils.isStream(data)) {
if (utils.isArrayBuffer(data)) {
if (utils.isBuffer(data)) {
// Nothing to do...
} else if (utils.isArrayBuffer(data)) {
data = new Buffer(new Uint8Array(data));
} else if (utils.isString(data)) {
data = new Buffer(data, 'utf-8');
} else {
return reject(createError(
'Data after transformation must be a string, an ArrayBuffer, or a Stream',
'Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream',
config
));
}
+1
View File
@@ -32,6 +32,7 @@ var defaults = {
normalizeHeaderName(headers, 'Content-Type');
if (utils.isFormData(data) ||
utils.isArrayBuffer(data) ||
utils.isBuffer(data) ||
utils.isStream(data) ||
utils.isFile(data) ||
utils.isBlob(data)
+11
View File
@@ -18,6 +18,16 @@ function isArray(val) {
return toString.call(val) === '[object Array]';
}
/**
* Determine if a value is a Node Buffer
*
* @param {Object} val The value to test
* @returns {boolean} True if value is a Node Buffer, otherwise false
*/
function isBuffer(val) {
return ((typeof Buffer !== 'undefined') && (Buffer.isBuffer) && (Buffer.isBuffer(val)));
}
/**
* Determine if a value is an ArrayBuffer
*
@@ -281,6 +291,7 @@ function extend(a, b, thisArg) {
module.exports = {
isArray: isArray,
isArrayBuffer: isArrayBuffer,
isBuffer: isBuffer,
isFormData: isFormData,
isArrayBufferView: isArrayBufferView,
isString: isString,