2
0
mirror of https://github.com/tenrok/axios.git synced 2026-05-18 12:39:44 +03:00
Files
axios/lib/defaults.js
T
Matt Zabriskie 3ae6670f77 Fixing typo
2014-08-29 01:05:49 -06:00

41 lines
1.0 KiB
JavaScript

'use strict';
var utils = require('./utils');
var JSON_START = /^\s*(\[|\{[^\{])/;
var JSON_END = /[\}\]]\s*$/;
var PROTECTION_PREFIX = /^\)\]\}',?\n/;
var CONTENT_TYPE_APPLICATION_JSON = {
'Content-Type': 'application/json;charset=utf-8'
};
module.exports = {
transformRequest: [function (data) {
return utils.isObject(data) &&
!utils.isFile(data) &&
!utils.isBlob(data) ?
JSON.stringify(data) : null;
}],
transformResponse: [function (data) {
if (typeof data === 'string') {
data = data.replace(PROTECTION_PREFIX, '');
if (JSON_START.test(data) && JSON_END.test(data)) {
data = JSON.parse(data);
}
}
return data;
}],
headers: {
common: {
'Accept': 'application/json, text/plain, */*'
},
patch: utils.merge(CONTENT_TYPE_APPLICATION_JSON),
post: utils.merge(CONTENT_TYPE_APPLICATION_JSON),
put: utils.merge(CONTENT_TYPE_APPLICATION_JSON)
},
xsrfCookieName: 'XSRF-TOKEN',
xsrfHeaderName: 'X-XSRF-TOKEN'
};