From 5c7a4f2b624001678f9fb8267aefe97188befccf Mon Sep 17 00:00:00 2001 From: duwen Date: Mon, 21 May 2018 10:49:46 +0800 Subject: [PATCH] fix #67 --- .npmignore | 1 - README.md | 2 +- demon/nodeTest.js | 26 +++++++++++++------------- dist/fly.js | 7 +++++-- dist/fly.min.js | 2 +- dist/npm/fly.js | 7 +++++-- dist/npm/hap.js | 7 +++++-- dist/npm/weex.js | 7 +++++-- dist/npm/wx.js | 7 +++++-- dist/umd/fly.umd.min.js | 2 +- dist/umd/hap.umd.min.js | 2 +- dist/umd/weex.umd.min.js | 2 +- dist/umd/wx.umd.min.js | 2 +- package.json | 2 +- src/fly.js | 7 +++++-- test/test.js | 7 +++++++ 16 files changed, 57 insertions(+), 33 deletions(-) diff --git a/.npmignore b/.npmignore index 1dd5046..3499869 100755 --- a/.npmignore +++ b/.npmignore @@ -2,6 +2,5 @@ node_modules/ build.js package-lock.json -README.md /demon .idea/ \ No newline at end of file diff --git a/README.md b/README.md index 972b9ec..32c20b0 100755 --- a/README.md +++ b/README.md @@ -541,7 +541,7 @@ The parameter of all is an array of `promise`, `then` will be called only when By default, fly serializes JavaScript objects to `JSON`. To send data in the `application/x-www-form-urlencoded` format instead, you can use one of the following options. -### By specify request header +### By specifying `content-type` request header When you specify `content-type` value as "application/x-www-form-urlencoded", fly will encode the request data automatically, for example: diff --git a/demon/nodeTest.js b/demon/nodeTest.js index 41b58ae..7a03fa2 100644 --- a/demon/nodeTest.js +++ b/demon/nodeTest.js @@ -33,14 +33,14 @@ fly.config.baseURL = "http://localhost/ds" // ] // } -// var formData={ -// name:"xxx", -// file: fs.createReadStream('./v.png'), -// } -// fly.upload("http://localhost/ds/test", formData) -// .then(d => { -// log(d) -// }).catch(log) +var formData = { + name: "haha", + file: fs.createReadStream('./v.png'), +} +fly.upload("http://localhost/ds/test", formData, {proxy: "http://localhost:8888"}) + .then(d => { + log(d.data) + }).catch(log) //fly.download("http://localhost:8089/static/v.png","./vxx.png"); @@ -53,8 +53,8 @@ fly.config.baseURL = "http://localhost/ds" // //post请求 -fly.post("http://localhost/ds/test", {xx: "xxx", aa: {bb: 5}}).then(d => { - console.log("post请求成功", d) -}).catch((e) => { - log(`post请求失败,错误码:${e.status}, 错误信息:${e.message}`); -}) \ No newline at end of file +// fly.post("http://localhost/ds/test", {xx: "xxx", aa: {bb: 5}}).then(d => { +// console.log("post请求成功", d) +// }).catch((e) => { +// log(`post请求失败,错误码:${e.status}, 错误信息:${e.message}`); +// }) \ No newline at end of file diff --git a/dist/fly.js b/dist/fly.js index cca739e..db6cced 100644 --- a/dist/fly.js +++ b/dist/fly.js @@ -315,15 +315,18 @@ var Fly = function () { } if (!isGet) { + // default content type + var _contentType = "application/x-www-form-urlencoded"; // If the request data is json object, transforming it to json string, // and set request content-type to "json". In browser, the data will // be sent as RequestBody instead of FormData - if (options.headers[contentType].toLowerCase() === "application/x-www-form-urlencoded") { + if (utils.trim((options.headers[contentType] || "").toLowerCase()) === _contentType) { data = utils.formatParams(data); } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - options.headers[contentType] = 'application/json;charset=utf-8'; + _contentType = 'application/json;charset=utf-8'; data = JSON.stringify(data); } + options.headers[contentType] = _contentType; } for (var k in options.headers) { diff --git a/dist/fly.min.js b/dist/fly.min.js index 6d796e2..68475ef 100644 --- a/dist/fly.min.js +++ b/dist/fly.min.js @@ -1 +1 @@ -!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=5)}({1:function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){t(e,i+"%5B%5D")});else if("object"==a)for(var u in e)i?t(e[u],i+"%5B"+s(u)+"%5D"):t(e[u],s(u));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},5:function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)h.engine=o,h.request=n,r(l.handler,h,0);else{var d=new f(p,c);d.response=h,u(d)}},o.onerror=function(e){u(new f(e.msg||"Network Error",0))},o.ontimeout=function(){u(new f("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,r.config);var o=n.headers;o[a]=o[a]||o[u]||"",delete o[u],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;p&&(s=p.call(f,n,Promise)||n),d(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):c(e)},function(e){h(e)})})});return h.engine=o,h}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),function(e,t){t()}(0,function(){window.fly=new a,window.Fly=a}),e.exports=a}}); \ No newline at end of file +!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=5)}({1:function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){t(e,i+"%5B%5D")});else if("object"==a)for(var u in e)i?t(e[u],i+"%5B"+s(u)+"%5D"):t(e[u],s(u));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},5:function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)h.engine=o,h.request=n,r(l.handler,h,0);else{var d=new f(p,c);d.response=h,u(d)}},o.onerror=function(e){u(new f(e.msg||"Network Error",0))},o.ontimeout=function(){u(new f("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,r.config);var o=n.headers;o[a]=o[a]||o[u]||"",delete o[u],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;p&&(s=p.call(f,n,Promise)||n),d(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):c(e)},function(e){h(e)})})});return h.engine=o,h}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),function(e,t){t()}(0,function(){window.fly=new a,window.Fly=a}),e.exports=a}}); \ No newline at end of file diff --git a/dist/npm/fly.js b/dist/npm/fly.js index 0eb220e..7453dd9 100644 --- a/dist/npm/fly.js +++ b/dist/npm/fly.js @@ -325,15 +325,18 @@ var Fly = function () { } if (!isGet) { + // default content type + var _contentType = "application/x-www-form-urlencoded"; // If the request data is json object, transforming it to json string, // and set request content-type to "json". In browser, the data will // be sent as RequestBody instead of FormData - if (options.headers[contentType].toLowerCase() === "application/x-www-form-urlencoded") { + if (utils.trim((options.headers[contentType] || "").toLowerCase()) === _contentType) { data = utils.formatParams(data); } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - options.headers[contentType] = 'application/json;charset=utf-8'; + _contentType = 'application/json;charset=utf-8'; data = JSON.stringify(data); } + options.headers[contentType] = _contentType; } for (var k in options.headers) { diff --git a/dist/npm/hap.js b/dist/npm/hap.js index e8345d0..3468513 100644 --- a/dist/npm/hap.js +++ b/dist/npm/hap.js @@ -622,15 +622,18 @@ } if (!isGet) { + // default content type + var _contentType = "application/x-www-form-urlencoded"; // If the request data is json object, transforming it to json string, // and set request content-type to "json". In browser, the data will // be sent as RequestBody instead of FormData - if (options.headers[contentType].toLowerCase() === "application/x-www-form-urlencoded") { + if (utils.trim((options.headers[contentType] || "").toLowerCase()) === _contentType) { data = utils.formatParams(data); } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - options.headers[contentType] = 'application/json;charset=utf-8'; + _contentType = 'application/json;charset=utf-8'; data = JSON.stringify(data); } + options.headers[contentType] = _contentType; } for (var k in options.headers) { diff --git a/dist/npm/weex.js b/dist/npm/weex.js index cdec349..857999a 100644 --- a/dist/npm/weex.js +++ b/dist/npm/weex.js @@ -622,15 +622,18 @@ } if (!isGet) { + // default content type + var _contentType = "application/x-www-form-urlencoded"; // If the request data is json object, transforming it to json string, // and set request content-type to "json". In browser, the data will // be sent as RequestBody instead of FormData - if (options.headers[contentType].toLowerCase() === "application/x-www-form-urlencoded") { + if (utils.trim((options.headers[contentType] || "").toLowerCase()) === _contentType) { data = utils.formatParams(data); } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - options.headers[contentType] = 'application/json;charset=utf-8'; + _contentType = 'application/json;charset=utf-8'; data = JSON.stringify(data); } + options.headers[contentType] = _contentType; } for (var k in options.headers) { diff --git a/dist/npm/wx.js b/dist/npm/wx.js index 9311eb4..798f039 100644 --- a/dist/npm/wx.js +++ b/dist/npm/wx.js @@ -529,15 +529,18 @@ var Fly = function () { } if (!isGet) { + // default content type + var _contentType = "application/x-www-form-urlencoded"; // If the request data is json object, transforming it to json string, // and set request content-type to "json". In browser, the data will // be sent as RequestBody instead of FormData - if (options.headers[contentType].toLowerCase() === "application/x-www-form-urlencoded") { + if (utils.trim((options.headers[contentType] || "").toLowerCase()) === _contentType) { data = utils.formatParams(data); } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - options.headers[contentType] = 'application/json;charset=utf-8'; + _contentType = 'application/json;charset=utf-8'; data = JSON.stringify(data); } + options.headers[contentType] = _contentType; } for (var k in options.headers) { diff --git a/dist/umd/fly.umd.min.js b/dist/umd/fly.umd.min.js index b7da978..6132bfb 100644 --- a/dist/umd/fly.umd.min.js +++ b/dist/umd/fly.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){t(e,i+"%5B%5D")});else if("object"==a)for(var u in e)i?t(e[u],i+"%5B"+s(u)+"%5D"):t(e[u],s(u));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},,function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},o.onerror=function(e){u(new f(e.msg||"Network Error",0))},o.ontimeout=function(){u(new f("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,r.config);var o=n.headers;o[a]=o[a]||o[u]||"",delete o[u],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;p&&(s=p.call(f,n,Promise)||n),h(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),e.exports=a}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){t(e,i+"%5B%5D")});else if("object"==a)for(var u in e)i?t(e[u],i+"%5B"+s(u)+"%5D"):t(e[u],s(u));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},,function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},o.onerror=function(e){u(new f(e.msg||"Network Error",0))},o.ontimeout=function(){u(new f("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,r.config);var o=n.headers;o[a]=o[a]||o[u]||"",delete o[u],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;p&&(s=p.call(f,n,Promise)||n),h(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),e.exports=a}])}); \ No newline at end of file diff --git a/dist/umd/hap.umd.min.js b/dist/umd/hap.umd.min.js index d00a33b..0e7f7ad 100644 --- a/dist/umd/hap.umd.min.js +++ b/dist/umd/hap.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var o in n)("object"==typeof exports?exports:e)[o]=n[o]}}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=9)}([function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":o(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var i=r.encode,a=r.type(e);if("array"==a)e.forEach(function(e,n){t(e,s+"%5B%5D")});else if("object"==a)for(var u in e)s?t(e[u],s+"%5B"+i(u)+"%5D"):t(e[u],i(u));else o||(n+="&"),o=!1,n+=s+"="+i(e)}var n="",o=!0,r=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e){return function(){function t(){o(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return i(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=a.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;if(t=t||null,u){var o=document.cookie;o&&(this.requestHeaders.cookie=o)}var r=this;if(e){var i={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};a.merge(i,r._options||{}),"GET"===i.method&&(i.body=null),r._changeReadyState(3);var c;r.timeout=r.timeout||0,r.timeout>0&&(c=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),i.timeout=r.timeout,e(i,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(c),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),a={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?a[p]=l:(a[p]=a[p]||[],a[p].push(l))}var d=a["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=a,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[a.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=r,d.request=n,o(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},r.onerror=function(e){u(new f(e.msg||"Network Error",0))},r.ontimeout=function(){u(new f("timeout [ "+r.timeout+"ms ]",1))},r._options=n,setTimeout(function(){r.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,o.config);var r=n.headers;r[a]=r[a]||r[u]||"",delete r[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var i=n;p&&(i=p.call(f,n,Promise)||n),h(i)||(i=Promise.resolve(i)),i.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=r,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,o){return this.request(t,n,s.merge({method:e},o))}}),e.exports=a},,function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports=function(e){return function(t,n){t.data=t.body,t.header=t.headers,t.complete=function(e){"object"!==(void 0===e?"undefined":o(e))&&(e={code:0,msg:e}),n({statusCode:e.code||0,responseText:e.data,headers:e.headers,statusMessage:e.msg})},e.fetch(t)}}},,,,,function(e,t,n){"use strict";var o=n(2),r=n(1),s=n(4);e.exports=function(e){var t=r(s(e));return new o(t)}}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var o in n)("object"==typeof exports?exports:e)[o]=n[o]}}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=9)}([function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":o(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var i=r.encode,a=r.type(e);if("array"==a)e.forEach(function(e,n){t(e,s+"%5B%5D")});else if("object"==a)for(var u in e)s?t(e[u],s+"%5B"+i(u)+"%5D"):t(e[u],i(u));else o||(n+="&"),o=!1,n+=s+"="+i(e)}var n="",o=!0,r=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e){return function(){function t(){o(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return i(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=a.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;if(t=t||null,u){var o=document.cookie;o&&(this.requestHeaders.cookie=o)}var r=this;if(e){var i={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};a.merge(i,r._options||{}),"GET"===i.method&&(i.body=null),r._changeReadyState(3);var c;r.timeout=r.timeout||0,r.timeout>0&&(c=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),i.timeout=r.timeout,e(i,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(c),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),a={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?a[p]=l:(a[p]=a[p]||[],a[p].push(l))}var d=a["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=a,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[a.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=r,d.request=n,o(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},r.onerror=function(e){u(new f(e.msg||"Network Error",0))},r.ontimeout=function(){u(new f("timeout [ "+r.timeout+"ms ]",1))},r._options=n,setTimeout(function(){r.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,o.config);var r=n.headers;r[a]=r[a]||r[u]||"",delete r[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var i=n;p&&(i=p.call(f,n,Promise)||n),h(i)||(i=Promise.resolve(i)),i.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=r,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,o){return this.request(t,n,s.merge({method:e},o))}}),e.exports=a},,function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports=function(e){return function(t,n){t.data=t.body,t.header=t.headers,t.complete=function(e){"object"!==(void 0===e?"undefined":o(e))&&(e={code:0,msg:e}),n({statusCode:e.code||0,responseText:e.data,headers:e.headers,statusMessage:e.msg})},e.fetch(t)}}},,,,,function(e,t,n){"use strict";var o=n(2),r=n(1),s=n(4);e.exports=function(e){var t=r(s(e));return new o(t)}}])}); \ No newline at end of file diff --git a/dist/umd/weex.umd.min.js b/dist/umd/weex.umd.min.js index 2641e35..ca0fe94 100644 --- a/dist/umd/weex.umd.min.js +++ b/dist/umd/weex.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var o in n)("object"==typeof exports?exports:e)[o]=n[o]}}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=10)}([function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":o(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=r.encode,i=r.type(e);if("array"==i)e.forEach(function(e,n){t(e,s+"%5B%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else o||(n+="&"),o=!1,n+=s+"="+a(e)}var n="",o=!0,r=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e){return function(){function t(){o(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;if(t=t||null,u){var o=document.cookie;o&&(this.requestHeaders.cookie=o)}var r=this;if(e){var a={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};i.merge(a,r._options||{}),"GET"===a.method&&(a.body=null),r._changeReadyState(3);var c;r.timeout=r.timeout||0,r.timeout>0&&(c=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),a.timeout=r.timeout,e(a,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(c),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var a=t("headers"),i={};for(var f in a){var l=a[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?i[p]=l:(i[p]=i[p]||[],i[p].push(l))}var d=i["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=i,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=r,d.request=n,o(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},r.onerror=function(e){u(new f(e.msg||"Network Error",0))},r.ontimeout=function(){u(new f("timeout [ "+r.timeout+"ms ]",1))},r._options=n,setTimeout(function(){r.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,o.config);var r=n.headers;r[i]=r[i]||r[u]||"",delete r[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=r,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,o){return this.request(t,n,s.merge({method:e},o))}}),e.exports=i},,,function(e,t,n){"use strict";var o=weex.requireModule("stream");e.exports=function(e,t){e.body||delete e.body,o.fetch(e,function(e){t(e.ok?{statusCode:e.status,responseText:e.data,headers:e.headers,statusMessage:e.statusText}:{statusCode:e.status||0,statusMessage:e.statusText})})}},,,,,function(e,t,n){"use strict";var o=n(2),r=n(1),s=n(5),a=r(s);e.exports=function(e){return new o(e||a)}}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=10)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var i=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){t(e,s+"%5B%5D")});else if("object"==a)for(var u in e)s?t(e[u],s+"%5B"+i(u)+"%5D"):t(e[u],i(u));else r||(n+="&"),r=!1,n+=s+"="+i(e)}var n="",r=!0,o=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return i(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=a.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;if(t=t||null,u){var r=document.cookie;r&&(this.requestHeaders.cookie=r)}var o=this;if(e){var i={method:o.method,url:o.responseURL,headers:o.requestHeaders||{},body:t};a.merge(i,o._options||{}),"GET"===i.method&&(i.body=null),o._changeReadyState(3);var c;o.timeout=o.timeout||0,o.timeout>0&&(c=setTimeout(function(){3===o.readyState&&(n._call("onloadend"),o._changeReadyState(0),o._call("ontimeout"))},o.timeout)),i.timeout=o.timeout,e(i,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===o.readyState){clearTimeout(c),o.status=t("statusCode")-0;var n=t("responseText"),r=t("statusMessage");if(o.status){var i=t("headers"),a={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?a[p]=l:(a[p]=a[p]||[],a[p].push(l))}var d=a["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),o.responseHeaders=a,o.statusText=r||"",o.response=o.responseText=n,o._response=e,o._changeReadyState(4),o._call("onload")}else o.statusText=n,o._call("onerror",{msg:r});o._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[a.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},o.onerror=function(e){u(new f(e.msg||"Network Error",0))},o.ontimeout=function(){u(new f("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,r.config);var o=n.headers;o[a]=o[a]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var i=n;p&&(i=p.call(f,n,Promise)||n),h(i)||(i=Promise.resolve(i)),i.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),e.exports=a},,,function(e,t,n){"use strict";var r=weex.requireModule("stream");e.exports=function(e,t){e.body||delete e.body,r.fetch(e,function(e){t(e.ok?{statusCode:e.status,responseText:e.data,headers:e.headers,statusMessage:e.statusText}:{statusCode:e.status||0,statusMessage:e.statusText})})}},,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(5),i=o(s);e.exports=function(e){return new r(e||i)}}])}); \ No newline at end of file diff --git a/dist/umd/wx.umd.min.js b/dist/umd/wx.umd.min.js index 2884e39..6997015 100644 --- a/dist/umd/wx.umd.min.js +++ b/dist/umd/wx.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=11)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){t(e,s+"%5B%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;if(t=t||null,u){var r=document.cookie;r&&(this.requestHeaders.cookie=r)}var o=this;if(e){var a={method:o.method,url:o.responseURL,headers:o.requestHeaders||{},body:t};i.merge(a,o._options||{}),"GET"===a.method&&(a.body=null),o._changeReadyState(3);var c;o.timeout=o.timeout||0,o.timeout>0&&(c=setTimeout(function(){3===o.readyState&&(n._call("onloadend"),o._changeReadyState(0),o._call("ontimeout"))},o.timeout)),a.timeout=o.timeout,e(a,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===o.readyState){clearTimeout(c),o.status=t("statusCode")-0;var n=t("responseText"),r=t("statusMessage");if(o.status){var a=t("headers"),i={};for(var f in a){var l=a[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?i[p]=l:(i[p]=i[p]||[],i[p].push(l))}var d=i["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),o.responseHeaders=i,o.statusText=r||"",o.response=o.responseText=n,o._response=e,o._changeReadyState(4),o._call("onload")}else o.statusText=n,o._call("onerror",{msg:r});o._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},o.onerror=function(e){u(new f(e.msg||"Network Error",0))},o.ontimeout=function(){u(new f("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,r.config);var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),e.exports=i},,,,function(e,t,n){"use strict";e.exports=function(e,t){var n={method:e.method,url:e.url,dataType:e.dataType||void 0,header:e.headers,data:e.body||{},success:function(e){t({statusCode:e.statusCode,responseText:e.data,headers:e.header,statusMessage:e.errMsg})},fail:function(e){t({statusCode:e.statusCode||0,statusMessage:e.errMsg})}};wx.request(n)}},,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(6),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=11)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){t(e,s+"%5B%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return t(e,""),n},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;if(t=t||null,u){var r=document.cookie;r&&(this.requestHeaders.cookie=r)}var o=this;if(e){var a={method:o.method,url:o.responseURL,headers:o.requestHeaders||{},body:t};i.merge(a,o._options||{}),"GET"===a.method&&(a.body=null),o._changeReadyState(3);var c;o.timeout=o.timeout||0,o.timeout>0&&(c=setTimeout(function(){3===o.readyState&&(n._call("onloadend"),o._changeReadyState(0),o._call("ontimeout"))},o.timeout)),a.timeout=o.timeout,e(a,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===o.readyState){clearTimeout(c),o.status=t("statusCode")-0;var n=t("responseText"),r=t("statusMessage");if(o.status){var a=t("headers"),i={};for(var f in a){var l=a[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?i[p]=l:(i[p]=i[p]||[],i[p].push(l))}var d=i["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),o.responseHeaders=i,o.statusText=r||"",o.response=o.responseText=n,o._response=e,o._changeReadyState(4),o._call("onload")}else o.statusText=n,o._call("onerror",{msg:r});o._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n=200&&c<300||304===c)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new f(p,c);h.response=d,u(h)}},o.onerror=function(e){u(new f(e.msg||"Network Error",0))},o.ontimeout=function(){u(new f("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,r.config);var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}},{key:"lock",value:function(){this.interceptors.request.lock()}},{key:"unlock",value:function(){this.interceptors.request.unlock()}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),e.exports=i},,,,function(e,t,n){"use strict";e.exports=function(e,t){var n={method:e.method,url:e.url,dataType:e.dataType||void 0,header:e.headers,data:e.body||{},success:function(e){t({statusCode:e.statusCode,responseText:e.data,headers:e.header,statusMessage:e.errMsg})},fail:function(e){t({statusCode:e.statusCode||0,statusMessage:e.errMsg})}};wx.request(n)}},,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(6),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file diff --git a/package.json b/package.json index 4d41836..b162cbe 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "flyio", - "version": "0.5.6", + "version": "0.5.8", "main": "node-index.js", "browser": "index.js", "author": { diff --git a/src/fly.js b/src/fly.js index 6497d20..955fca3 100644 --- a/src/fly.js +++ b/src/fly.js @@ -153,15 +153,18 @@ class Fly { } if (!isGet) { + // default content type + var _contentType = "application/x-www-form-urlencoded"; // If the request data is json object, transforming it to json string, // and set request content-type to "json". In browser, the data will // be sent as RequestBody instead of FormData - if (options.headers[contentType].toLowerCase() === "application/x-www-form-urlencoded") { + if (utils.trim((options.headers[contentType] || "").toLowerCase()) === _contentType) { data = utils.formatParams(data); } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - options.headers[contentType] = 'application/json;charset=utf-8' + _contentType = 'application/json;charset=utf-8' data = JSON.stringify(data); } + options.headers[contentType] = _contentType; } for (var k in options.headers) { diff --git a/test/test.js b/test/test.js index ab55d56..68df8c5 100644 --- a/test/test.js +++ b/test/test.js @@ -86,6 +86,13 @@ describe("request", function () { log("fail") }), + fly.post("/test?fm=true", {aa: 8, bb: 9, tt: {xx: 5}}) + .then(function () { + log("success") + }).catch(function () { + log("fail") + }), + fly.get("http://xxx.bxxcom").catch(function (e) { log(e.message); })