| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));module.exports = function () {  function XhrWeapp() {    (0, _classCallCheck2.default)(this, XhrWeapp);    this.UNSENT = 0;    this.OPENED = 1;    this.HEADERS_RECEIVED = 2;    this.LOADING = 3;    this.DONE = 4;    this.header = {};    this.readyState = this.DONE;    this.status = 0;    this.response = '';    this.responseType = '';    this.responseText = '';    this.responseHeader = {};    this.method = '';    this.url = '';    this.onabort = function () {};    this.onprogress = function () {};    this.onerror = function () {};    this.onreadystatechange = function () {};    this.requestTask = null;  }  (0, _createClass2.default)(XhrWeapp, [{    key: "getAllResponseHeaders",    value: function () {      var header = '';      for (var key in this.responseHeader) {        header += key + ':' + this.getResponseHeader(key) + '\r\n';      }      return header;    }  }, {    key: "getResponseHeader",    value: function (key) {      return this.responseHeader[key];    }  }, {    key: "setRequestHeader",    value: function (key, value) {      this.header[key] = value;    }  }, {    key: "open",    value: function (method, url) {      this.method = method;      this.url = url;    }  }, {    key: "abort",    value: function () {      if (!this.requestTask) {        return;      }      this.requestTask.abort();      this.status = 0;      this.response = undefined;      this.onabort();      this.onreadystatechange();    }  }, {    key: "send",    value: function (data) {      var _this = this;      this.requestTask = wx.request({        url: this.url,        method: this.method,        data: data,        header: this.header,        responseType: this.responseType,        success: function (res) {          _this.status = res.statusCode;          _this.response = res.data;          _this.responseHeader = res.header;          _this.responseText = JSON.stringify(res.data);          _this.requestTask = null;          _this.onreadystatechange();        },        fail: function (err) {          _this.requestTask = null;          _this.onerror(err);        }      });      this.requestTask.onProgressUpdate(function (res) {        var event = {          lengthComputable: res.totalBytesExpectedToWrite !== 0,          loaded: res.totalBytesWritten,          total: res.totalBytesExpectedToWrite        };        _this.onprogress(event);      });    }  }]);  return XhrWeapp;}();
 |