diff --git a/lib/defaults.js b/lib/defaults.js index 7aa1641..3baa22f 100644 --- a/lib/defaults.js +++ b/lib/defaults.js @@ -5,12 +5,12 @@ 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' +var DEFAULT_CONTENT_TYPE = { + 'Content-Type': 'application/x-www-form-urlencoded' }; module.exports = { - transformRequest: [function (data) { + transformRequest: [function (data, headers) { if (utils.isArrayBuffer(data)) { return data; } @@ -18,6 +18,10 @@ module.exports = { return data.buffer; } if (utils.isObject(data) && !utils.isFile(data) && !utils.isBlob(data)) { + // Set application/json if no Content-Type has been specified + if (utils.isUndefined(headers['Content-Type'])) { + headers['Content-Type'] = 'application/json;charset=utf-8'; + } return JSON.stringify(data); } return data; @@ -37,9 +41,9 @@ module.exports = { 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) + patch: utils.merge(DEFAULT_CONTENT_TYPE), + post: utils.merge(DEFAULT_CONTENT_TYPE), + put: utils.merge(DEFAULT_CONTENT_TYPE) }, xsrfCookieName: 'XSRF-TOKEN',