8 lines
3.0 KiB
JavaScript
8 lines
3.0 KiB
JavaScript
//>>built
|
|
define("dojo/request/xhr",["../errors/RequestError","./watch","./handlers","./util","../has"],function(n,w,p,h,d){function x(a,b){var c=a.xhr;a.status=a.xhr.status;a.text=c.responseText;"xml"===a.options.handleAs&&(a.data=c.responseXML);if(!b)try{p(a)}catch(e){b=e}b?this.reject(b):h.checkStatus(c.status)?this.resolve(a):(b=new n("Unable to load "+a.url+" status: "+c.status,a),this.reject(b))}function y(a){return this.xhr.getResponseHeader(a)}function k(a,b,c){var e=h.parseArgs(a,h.deepCreate(z,b),
|
|
d("native-formdata")&&b&&b.data&&b.data instanceof FormData);a=e.url;b=e.options;var q,f=h.deferred(e,r,t,v,x,function(){q&&q()}),g=e.xhr=k._create();if(!g)return f.cancel(new n("XHR was not created")),c?f:f.promise;e.getHeader=y;u&&(q=u(g,f,e));var p=b.data,A=!b.sync,B=b.method;try{g.open(B,a,A,b.user||void 0,b.password||void 0);b.withCredentials&&(g.withCredentials=b.withCredentials);var l=b.headers;a="application/x-www-form-urlencoded";if(l)for(var m in l)"content-type"===m.toLowerCase()?a=l[m]:
|
|
l[m]&&g.setRequestHeader(m,l[m]);a&&!1!==a&&g.setRequestHeader("Content-Type",a);l&&"X-Requested-With"in l||g.setRequestHeader("X-Requested-With","XMLHttpRequest");h.notify&&h.notify.emit("send",e,f.promise.cancel);g.send(p)}catch(C){f.reject(C)}w(f);g=null;return c?f:f.promise}d.add("native-xhr",function(){return"undefined"!==typeof XMLHttpRequest});d.add("dojo-force-activex-xhr",function(){return d("activex")&&!document.addEventListener&&"file:"===window.location.protocol});d.add("native-xhr2",
|
|
function(){if(d("native-xhr")){var a=new XMLHttpRequest;return"undefined"!==typeof a.addEventListener&&("undefined"===typeof opera||"undefined"!==typeof a.upload)}});d.add("native-formdata",function(){return"function"===typeof FormData});var t,v,u,r;d("native-xhr2")?(t=function(a){return!this.isFulfilled()},r=function(a,b){b.xhr.abort()},u=function(a,b,c){function e(a){b.handleResponse(c)}function d(a){a=new n("Unable to load "+c.url+" status: "+a.target.status,c);b.handleResponse(c,a)}function f(a){a.lengthComputable&&
|
|
(c.loaded=a.loaded,c.total=a.total,b.progress(c))}a.addEventListener("load",e,!1);a.addEventListener("error",d,!1);a.addEventListener("progress",f,!1);return function(){a.removeEventListener("load",e,!1);a.removeEventListener("error",d,!1);a.removeEventListener("progress",f,!1);a=null}}):(t=function(a){return a.xhr.readyState},v=function(a){return 4===a.xhr.readyState},r=function(a,b){a=b.xhr;b=typeof a.abort;"function"!==b&&"object"!==b&&"unknown"!==b||a.abort()});var z={data:null,query:null,sync:!1,
|
|
method:"GET"};k._create=function(){throw Error("XMLHTTP not available");};if(d("native-xhr")&&!d("dojo-force-activex-xhr"))k._create=function(){return new XMLHttpRequest};else if(d("activex"))try{new ActiveXObject("Msxml2.XMLHTTP"),k._create=function(){return new ActiveXObject("Msxml2.XMLHTTP")}}catch(a){try{new ActiveXObject("Microsoft.XMLHTTP"),k._create=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}catch(b){}}h.addCommonMethods(k);return k});
|
|
//# sourceMappingURL=xhr.js.map
|