wzj-boot/mini-app/weapp/js/request.js
2021-01-12 18:04:14 +08:00

110 lines
3.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _xiao4rBase = _interopRequireDefault(require('./../xiao4rBase.js'));
var _uuid = require('./utils/uuid.js');
var _store = _interopRequireDefault(require('./../store/index.js'));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var Xiao4rRequest = /*#__PURE__*/function () {
function Xiao4rRequest() {
_classCallCheck(this, Xiao4rRequest);
_defineProperty(this, "requestTaskMap", new Map());
}
_createClass(Xiao4rRequest, [{
key: "requestPromise",
/**
* requestPromise用于将wx.request改写成Promise方式
* @param{string} myUrl 接口地址
* @return: Promise实例对象
*/
value: function requestPromise(req) {
var _this = this;
var id = (0, _uuid.uuid)();
var self = this;
if (_store["default"].state.user.token) {
if (req.header) {
req.header['Authorization'] = _store["default"].state.user.token;
} else {
req.header = {
Authorization: _store["default"].state.user.token
};
}
}
var promise = new Promise(function (resolve, reject) {
var task = wx.request({
url: req.url,
method: req.method,
header: req.header,
data: req.data,
success: function success(rsp) {
return resolve(rsp.data);
},
fail: function fail(error) {
_xiao4rBase["default"].showToast('网络连接异常.');
reject(error);
},
complete: function complete() {
_this.requestTaskMap["delete"](id);
}
});
self.requestTaskMap.set(id, task);
}); // 返回一个Promise实例对象
promise.taskId = id;
return promise;
}
}, {
key: "post",
value: function post(req) {
req.method = 'POST';
return this.requestPromise(req);
}
}, {
key: "get",
value: function get(req) {
req.method = 'GET';
return this.requestPromise(req);
}
}, {
key: "put",
value: function put(req) {
req.method = 'PUT';
return this.requestPromise(req);
}
}, {
key: "del",
value: function del(req) {
req.method = 'DEL';
return this.requestPromise(req);
}
}]);
return Xiao4rRequest;
}();
var _default = new Xiao4rRequest();
exports["default"] = _default;