rxtutils 1.1.4-beta.10 → 1.1.4-beta.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/request/index.cjs +35 -22
- package/cjs/request/index.d.ts +3 -3
- package/es/request/index.d.ts +3 -3
- package/es/request/index.mjs +35 -22
- package/package.json +1 -1
- package/cjs/_utils/deepAssign.cjs +0 -25
- package/es/_utils/deepAssign.mjs +0 -23
package/cjs/request/index.cjs
CHANGED
|
@@ -7,7 +7,6 @@ var defaultHandlers = require('./defaultHandlers.cjs');
|
|
|
7
7
|
var defaultEquals = require('../_utils/defaultEquals.cjs');
|
|
8
8
|
var index = require('../cache/index.cjs');
|
|
9
9
|
var error = require('./error.cjs');
|
|
10
|
-
var deepAssign = require('../_utils/deepAssign.cjs');
|
|
11
10
|
|
|
12
11
|
/**
|
|
13
12
|
* 创建基础请求实例
|
|
@@ -35,37 +34,43 @@ function createBaseRequest(baseOptions) {
|
|
|
35
34
|
var cache = new index.default(cacheDataInStorage, cacheDataKey, cacheTime, indexDBName, cacheKeyEquals);
|
|
36
35
|
function request(requestParam, options) {
|
|
37
36
|
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
38
|
-
|
|
37
|
+
function retry() {
|
|
38
|
+
if (retryTimes > 0) {
|
|
39
|
+
return request(requestParam, tslib.__assign(tslib.__assign({}, options), { retryTimes: retryTimes - 1 }));
|
|
40
|
+
}
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
var _a, _b, requestMiddlewares, _c, finalAxiosOptions, finalRequestOptions, _i, requestMiddlewares_1, middleware, _d, _e, nextAxiosOptions, _f, nextRequestOptions, method, url, _g, data, _h, params, requestDataOrParams, _j, defaultMessageShower, _k, _l, enableCache, _m, cacheData, _o, defaultErrorCodeHandler, _p, defaultHttpErrorCodeHandler, _q, otherErrorHandler, _r, errorCodePath, _s, cacheTime, _t, errorCodeMap, _u, successCodes, _v, httpErrorCodeMap, _w,
|
|
39
44
|
// axiosOptions = {},
|
|
40
|
-
throwError,
|
|
45
|
+
throwError, _x, retryTimes, cacheItem;
|
|
41
46
|
var _this = this;
|
|
42
|
-
return tslib.__generator(this, function (
|
|
43
|
-
switch (
|
|
47
|
+
return tslib.__generator(this, function (_y) {
|
|
48
|
+
switch (_y.label) {
|
|
44
49
|
case 0:
|
|
45
50
|
_a = tslib.__assign(tslib.__assign(tslib.__assign({}, baseOptions), createOptions), options), _b = _a.requestMiddlewares, requestMiddlewares = _b === void 0 ? [] : _b, _c = _a.axiosOptions, finalAxiosOptions = _c === void 0 ? {} : _c;
|
|
46
51
|
finalRequestOptions = tslib.__assign(tslib.__assign({}, requestOptions), requestParam);
|
|
47
52
|
_i = 0, requestMiddlewares_1 = requestMiddlewares;
|
|
48
|
-
|
|
53
|
+
_y.label = 1;
|
|
49
54
|
case 1:
|
|
50
55
|
if (!(_i < requestMiddlewares_1.length)) return [3 /*break*/, 4];
|
|
51
56
|
middleware = requestMiddlewares_1[_i];
|
|
52
57
|
return [4 /*yield*/, middleware(finalAxiosOptions, finalRequestOptions)];
|
|
53
58
|
case 2:
|
|
54
|
-
_d =
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
59
|
+
_d = _y.sent(), _e = _d.axiosOptions, nextAxiosOptions = _e === void 0 ? finalAxiosOptions : _e, _f = _d.requestOptions, nextRequestOptions = _f === void 0 ? finalRequestOptions : _f;
|
|
60
|
+
finalAxiosOptions = nextAxiosOptions;
|
|
61
|
+
finalRequestOptions = nextRequestOptions;
|
|
62
|
+
_y.label = 3;
|
|
58
63
|
case 3:
|
|
59
64
|
_i++;
|
|
60
65
|
return [3 /*break*/, 1];
|
|
61
66
|
case 4:
|
|
62
|
-
method = finalRequestOptions.method, url = finalRequestOptions.url,
|
|
67
|
+
method = finalRequestOptions.method, url = finalRequestOptions.url, _g = finalRequestOptions.data, data = _g === void 0 ? {} : _g, _h = finalRequestOptions.params, params = _h === void 0 ? {} : _h;
|
|
63
68
|
requestDataOrParams = params;
|
|
64
69
|
if (method.toLowerCase() === "post") {
|
|
65
70
|
requestDataOrParams = data;
|
|
66
71
|
}
|
|
67
|
-
|
|
68
|
-
|
|
72
|
+
_j = tslib.__assign(tslib.__assign(tslib.__assign({}, baseOptions), createOptions), options).defaultMessageShower, defaultMessageShower = _j === void 0 ? console.error : _j;
|
|
73
|
+
_k = tslib.__assign(tslib.__assign(tslib.__assign({}, baseOptions), createOptions), options), _l = _k.enableCache, enableCache = _l === void 0 ? false : _l, _m = _k.cacheData, cacheData = _m === void 0 ? false : _m, _o = _k.defaultErrorCodeHandler, defaultErrorCodeHandler = _o === void 0 ? defaultHandlers._defaultErrorCodeHandler.bind(null, defaultMessageShower) : _o, _p = _k.defaultHttpErrorCodeHandler, defaultHttpErrorCodeHandler = _p === void 0 ? defaultHandlers._defaultHttpErrorCodeHandler.bind(null, defaultMessageShower) : _p, _q = _k.otherErrorHandler, otherErrorHandler = _q === void 0 ? defaultHandlers._defaultOtherErrorCodeHandler.bind(null, defaultMessageShower) : _q, _r = _k.errorCodePath, errorCodePath = _r === void 0 ? "code" : _r, _s = _k.cacheTime, cacheTime = _s === void 0 ? 60 : _s, _t = _k.errorCodeMap, errorCodeMap = _t === void 0 ? {} : _t, _u = _k.successCodes, successCodes = _u === void 0 ? ["0", "200"] : _u, _v = _k.httpErrorCodeMap, httpErrorCodeMap = _v === void 0 ? {} : _v, _w = _k.throwError, throwError = _w === void 0 ? true : _w, _x = _k.retryTimes, retryTimes = _x === void 0 ? 0 : _x;
|
|
69
74
|
if (enableCache) {
|
|
70
75
|
cacheItem = cache.getCache(requestDataOrParams);
|
|
71
76
|
if (cacheItem) {
|
|
@@ -75,7 +80,7 @@ function createBaseRequest(baseOptions) {
|
|
|
75
80
|
return [2 /*return*/, instance
|
|
76
81
|
.request(tslib.__assign({ method: method, url: url, data: data, params: params }, finalAxiosOptions))
|
|
77
82
|
.then(function (res) { return tslib.__awaiter(_this, void 0, void 0, function () {
|
|
78
|
-
var errorCode, _a, _b, _c, customHandler, err, _d, _e, replaceResData, _f, handlerThrowError, _g;
|
|
83
|
+
var errorCode, _a, _b, _c, customHandler, err, retryTask, _d, _e, replaceResData, _f, handlerThrowError, _g, retryTask;
|
|
79
84
|
return tslib.__generator(this, function (_h) {
|
|
80
85
|
switch (_h.label) {
|
|
81
86
|
case 0:
|
|
@@ -86,20 +91,22 @@ function createBaseRequest(baseOptions) {
|
|
|
86
91
|
}
|
|
87
92
|
return [2 /*return*/, res.data];
|
|
88
93
|
}
|
|
89
|
-
// 不在成功 code 中,意味着请求失败
|
|
90
|
-
if (retryTimes > 0) {
|
|
91
|
-
return [2 /*return*/, request(requestParam, tslib.__assign(tslib.__assign({}, options), { retryTimes: retryTimes - 1 }))];
|
|
92
|
-
}
|
|
93
94
|
_a = errorCodeMap, _b = errorCode, _c = _a[_b], customHandler = _c === void 0 ? defaultErrorCodeHandler : _c;
|
|
94
95
|
err = new error("服务端错误", "server", res);
|
|
95
96
|
if (!(typeof customHandler === "string")) return [3 /*break*/, 1];
|
|
96
97
|
defaultMessageShower(customHandler);
|
|
98
|
+
retryTask = retry();
|
|
99
|
+
if (retryTask)
|
|
100
|
+
return [2 /*return*/, retryTask];
|
|
97
101
|
return [3 /*break*/, 3];
|
|
98
102
|
case 1:
|
|
99
103
|
_g = Object;
|
|
100
104
|
return [4 /*yield*/, customHandler(errorCode, res.data, res, tslib.__assign(tslib.__assign({}, requestOptions), requestParam))];
|
|
101
105
|
case 2:
|
|
102
106
|
_d = _g.apply(void 0, [(_h.sent())]), _e = _d.replaceResData, replaceResData = _e === void 0 ? res.data : _e, _f = _d.throwError, handlerThrowError = _f === void 0 ? "default" : _f;
|
|
107
|
+
retryTask = retry();
|
|
108
|
+
if (retryTask)
|
|
109
|
+
return [2 /*return*/, retryTask];
|
|
103
110
|
res.data = replaceResData;
|
|
104
111
|
switch (handlerThrowError) {
|
|
105
112
|
case true:
|
|
@@ -116,25 +123,28 @@ function createBaseRequest(baseOptions) {
|
|
|
116
123
|
}
|
|
117
124
|
});
|
|
118
125
|
}); }, function (error$1) { return tslib.__awaiter(_this, void 0, void 0, function () {
|
|
119
|
-
var resData, _a, _b, _c, customHandler, err, _d, _e, replaceResData, _f, handlerThrowError, _g, resData, err, _h, _j, replaceResData, _k, handlerThrowError, _l;
|
|
126
|
+
var resData, _a, _b, _c, customHandler, err, retryTask, _d, _e, replaceResData, _f, handlerThrowError, _g, retryTask, resData, err, _h, _j, replaceResData, _k, handlerThrowError, _l, retryTask;
|
|
120
127
|
return tslib.__generator(this, function (_m) {
|
|
121
128
|
switch (_m.label) {
|
|
122
129
|
case 0:
|
|
123
|
-
if (retryTimes > 0) {
|
|
124
|
-
return [2 /*return*/, request(requestParam, tslib.__assign(tslib.__assign({}, options), { retryTimes: retryTimes - 1 }))];
|
|
125
|
-
}
|
|
126
130
|
if (!error$1.response) return [3 /*break*/, 4];
|
|
127
131
|
resData = error$1;
|
|
128
132
|
_a = httpErrorCodeMap, _b = error$1.response.status, _c = _a[_b], customHandler = _c === void 0 ? defaultHttpErrorCodeHandler : _c;
|
|
129
133
|
err = new error("服务端错误", "http", error$1);
|
|
130
134
|
if (!(typeof customHandler === "string")) return [3 /*break*/, 1];
|
|
131
135
|
defaultMessageShower(customHandler);
|
|
136
|
+
retryTask = retry();
|
|
137
|
+
if (retryTask)
|
|
138
|
+
return [2 /*return*/, retryTask];
|
|
132
139
|
return [3 /*break*/, 3];
|
|
133
140
|
case 1:
|
|
134
141
|
_g = Object;
|
|
135
142
|
return [4 /*yield*/, customHandler(error$1.response.status, error$1, tslib.__assign(tslib.__assign({}, requestOptions), requestParam))];
|
|
136
143
|
case 2:
|
|
137
144
|
_d = _g.apply(void 0, [(_m.sent())]), _e = _d.replaceResData, replaceResData = _e === void 0 ? error$1 : _e, _f = _d.throwError, handlerThrowError = _f === void 0 ? "default" : _f;
|
|
145
|
+
retryTask = retry();
|
|
146
|
+
if (retryTask)
|
|
147
|
+
return [2 /*return*/, retryTask];
|
|
138
148
|
resData = replaceResData;
|
|
139
149
|
switch (handlerThrowError) {
|
|
140
150
|
case true:
|
|
@@ -157,6 +167,9 @@ function createBaseRequest(baseOptions) {
|
|
|
157
167
|
return [4 /*yield*/, otherErrorHandler(error$1)];
|
|
158
168
|
case 5:
|
|
159
169
|
_h = (_l.apply(void 0, [(_m.sent())])), _j = _h.replaceResData, replaceResData = _j === void 0 ? error$1 : _j, _k = _h.throwError, handlerThrowError = _k === void 0 ? "default" : _k;
|
|
170
|
+
retryTask = retry();
|
|
171
|
+
if (retryTask)
|
|
172
|
+
return [2 /*return*/, retryTask];
|
|
160
173
|
resData = replaceResData;
|
|
161
174
|
switch (handlerThrowError) {
|
|
162
175
|
case true:
|
package/cjs/request/index.d.ts
CHANGED
|
@@ -88,7 +88,7 @@ interface Options<Params = any, Data = any> {
|
|
|
88
88
|
* 默认错误码处理函数
|
|
89
89
|
* 当错误码不在 errorCodeMap 中时调用
|
|
90
90
|
*/
|
|
91
|
-
defaultErrorCodeHandler?: (code: string, data: Data, res: AxiosResponse<Data>) => Promise<ErrorHandlerReturnType<Data> | void>;
|
|
91
|
+
defaultErrorCodeHandler?: (code: string, data: Data, res: AxiosResponse<Data>) => ErrorHandlerReturnType<Data> | void | Promise<ErrorHandlerReturnType<Data> | void>;
|
|
92
92
|
/**
|
|
93
93
|
* 成功状态的错误码列表
|
|
94
94
|
* @default ['0', '200']
|
|
@@ -104,12 +104,12 @@ interface Options<Params = any, Data = any> {
|
|
|
104
104
|
* 默认 HTTP 错误码处理函数
|
|
105
105
|
* 当 HTTP 状态码不在 httpErrorCodeMap 中时调用
|
|
106
106
|
*/
|
|
107
|
-
defaultHttpErrorCodeHandler?: (code: number, error: any) => Promise<ErrorHandlerReturnType<Data> | void>;
|
|
107
|
+
defaultHttpErrorCodeHandler?: (code: number, error: any) => ErrorHandlerReturnType<Data> | void | Promise<ErrorHandlerReturnType<Data> | void>;
|
|
108
108
|
/**
|
|
109
109
|
* 其他错误处理函数
|
|
110
110
|
* 处理非 HTTP 错误和非业务错误码的错误
|
|
111
111
|
*/
|
|
112
|
-
otherErrorHandler?: (error: any) => Promise<ErrorHandlerReturnType<Data> | void>;
|
|
112
|
+
otherErrorHandler?: (error: any) => ErrorHandlerReturnType<Data> | void | Promise<ErrorHandlerReturnType<Data> | void>;
|
|
113
113
|
axiosOptions?: Omit<AxiosRequestConfig<Params>, "method" | "url" | "params" | "data">;
|
|
114
114
|
requestMiddlewares?: ((options: Options<Params, Data>, requestOptions: RequestOptions<Params>) => Promise<{
|
|
115
115
|
axiosOptions?: Options<Params, Data>["axiosOptions"];
|
package/es/request/index.d.ts
CHANGED
|
@@ -88,7 +88,7 @@ interface Options<Params = any, Data = any> {
|
|
|
88
88
|
* 默认错误码处理函数
|
|
89
89
|
* 当错误码不在 errorCodeMap 中时调用
|
|
90
90
|
*/
|
|
91
|
-
defaultErrorCodeHandler?: (code: string, data: Data, res: AxiosResponse<Data>) => Promise<ErrorHandlerReturnType<Data> | void>;
|
|
91
|
+
defaultErrorCodeHandler?: (code: string, data: Data, res: AxiosResponse<Data>) => ErrorHandlerReturnType<Data> | void | Promise<ErrorHandlerReturnType<Data> | void>;
|
|
92
92
|
/**
|
|
93
93
|
* 成功状态的错误码列表
|
|
94
94
|
* @default ['0', '200']
|
|
@@ -104,12 +104,12 @@ interface Options<Params = any, Data = any> {
|
|
|
104
104
|
* 默认 HTTP 错误码处理函数
|
|
105
105
|
* 当 HTTP 状态码不在 httpErrorCodeMap 中时调用
|
|
106
106
|
*/
|
|
107
|
-
defaultHttpErrorCodeHandler?: (code: number, error: any) => Promise<ErrorHandlerReturnType<Data> | void>;
|
|
107
|
+
defaultHttpErrorCodeHandler?: (code: number, error: any) => ErrorHandlerReturnType<Data> | void | Promise<ErrorHandlerReturnType<Data> | void>;
|
|
108
108
|
/**
|
|
109
109
|
* 其他错误处理函数
|
|
110
110
|
* 处理非 HTTP 错误和非业务错误码的错误
|
|
111
111
|
*/
|
|
112
|
-
otherErrorHandler?: (error: any) => Promise<ErrorHandlerReturnType<Data> | void>;
|
|
112
|
+
otherErrorHandler?: (error: any) => ErrorHandlerReturnType<Data> | void | Promise<ErrorHandlerReturnType<Data> | void>;
|
|
113
113
|
axiosOptions?: Omit<AxiosRequestConfig<Params>, "method" | "url" | "params" | "data">;
|
|
114
114
|
requestMiddlewares?: ((options: Options<Params, Data>, requestOptions: RequestOptions<Params>) => Promise<{
|
|
115
115
|
axiosOptions?: Options<Params, Data>["axiosOptions"];
|
package/es/request/index.mjs
CHANGED
|
@@ -5,7 +5,6 @@ import { _defaultErrorCodeHandler, _defaultHttpErrorCodeHandler, _defaultOtherEr
|
|
|
5
5
|
import defaultEquals from '../_utils/defaultEquals.mjs';
|
|
6
6
|
import Cache from '../cache/index.mjs';
|
|
7
7
|
import RequestError from './error.mjs';
|
|
8
|
-
import { deepAssign } from '../_utils/deepAssign.mjs';
|
|
9
8
|
|
|
10
9
|
/**
|
|
11
10
|
* 创建基础请求实例
|
|
@@ -33,37 +32,43 @@ function createBaseRequest(baseOptions) {
|
|
|
33
32
|
var cache = new Cache(cacheDataInStorage, cacheDataKey, cacheTime, indexDBName, cacheKeyEquals);
|
|
34
33
|
function request(requestParam, options) {
|
|
35
34
|
return __awaiter(this, void 0, void 0, function () {
|
|
36
|
-
|
|
35
|
+
function retry() {
|
|
36
|
+
if (retryTimes > 0) {
|
|
37
|
+
return request(requestParam, __assign(__assign({}, options), { retryTimes: retryTimes - 1 }));
|
|
38
|
+
}
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
var _a, _b, requestMiddlewares, _c, finalAxiosOptions, finalRequestOptions, _i, requestMiddlewares_1, middleware, _d, _e, nextAxiosOptions, _f, nextRequestOptions, method, url, _g, data, _h, params, requestDataOrParams, _j, defaultMessageShower, _k, _l, enableCache, _m, cacheData, _o, defaultErrorCodeHandler, _p, defaultHttpErrorCodeHandler, _q, otherErrorHandler, _r, errorCodePath, _s, cacheTime, _t, errorCodeMap, _u, successCodes, _v, httpErrorCodeMap, _w,
|
|
37
42
|
// axiosOptions = {},
|
|
38
|
-
throwError,
|
|
43
|
+
throwError, _x, retryTimes, cacheItem;
|
|
39
44
|
var _this = this;
|
|
40
|
-
return __generator(this, function (
|
|
41
|
-
switch (
|
|
45
|
+
return __generator(this, function (_y) {
|
|
46
|
+
switch (_y.label) {
|
|
42
47
|
case 0:
|
|
43
48
|
_a = __assign(__assign(__assign({}, baseOptions), createOptions), options), _b = _a.requestMiddlewares, requestMiddlewares = _b === void 0 ? [] : _b, _c = _a.axiosOptions, finalAxiosOptions = _c === void 0 ? {} : _c;
|
|
44
49
|
finalRequestOptions = __assign(__assign({}, requestOptions), requestParam);
|
|
45
50
|
_i = 0, requestMiddlewares_1 = requestMiddlewares;
|
|
46
|
-
|
|
51
|
+
_y.label = 1;
|
|
47
52
|
case 1:
|
|
48
53
|
if (!(_i < requestMiddlewares_1.length)) return [3 /*break*/, 4];
|
|
49
54
|
middleware = requestMiddlewares_1[_i];
|
|
50
55
|
return [4 /*yield*/, middleware(finalAxiosOptions, finalRequestOptions)];
|
|
51
56
|
case 2:
|
|
52
|
-
_d =
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
57
|
+
_d = _y.sent(), _e = _d.axiosOptions, nextAxiosOptions = _e === void 0 ? finalAxiosOptions : _e, _f = _d.requestOptions, nextRequestOptions = _f === void 0 ? finalRequestOptions : _f;
|
|
58
|
+
finalAxiosOptions = nextAxiosOptions;
|
|
59
|
+
finalRequestOptions = nextRequestOptions;
|
|
60
|
+
_y.label = 3;
|
|
56
61
|
case 3:
|
|
57
62
|
_i++;
|
|
58
63
|
return [3 /*break*/, 1];
|
|
59
64
|
case 4:
|
|
60
|
-
method = finalRequestOptions.method, url = finalRequestOptions.url,
|
|
65
|
+
method = finalRequestOptions.method, url = finalRequestOptions.url, _g = finalRequestOptions.data, data = _g === void 0 ? {} : _g, _h = finalRequestOptions.params, params = _h === void 0 ? {} : _h;
|
|
61
66
|
requestDataOrParams = params;
|
|
62
67
|
if (method.toLowerCase() === "post") {
|
|
63
68
|
requestDataOrParams = data;
|
|
64
69
|
}
|
|
65
|
-
|
|
66
|
-
|
|
70
|
+
_j = __assign(__assign(__assign({}, baseOptions), createOptions), options).defaultMessageShower, defaultMessageShower = _j === void 0 ? console.error : _j;
|
|
71
|
+
_k = __assign(__assign(__assign({}, baseOptions), createOptions), options), _l = _k.enableCache, enableCache = _l === void 0 ? false : _l, _m = _k.cacheData, cacheData = _m === void 0 ? false : _m, _o = _k.defaultErrorCodeHandler, defaultErrorCodeHandler = _o === void 0 ? _defaultErrorCodeHandler.bind(null, defaultMessageShower) : _o, _p = _k.defaultHttpErrorCodeHandler, defaultHttpErrorCodeHandler = _p === void 0 ? _defaultHttpErrorCodeHandler.bind(null, defaultMessageShower) : _p, _q = _k.otherErrorHandler, otherErrorHandler = _q === void 0 ? _defaultOtherErrorCodeHandler.bind(null, defaultMessageShower) : _q, _r = _k.errorCodePath, errorCodePath = _r === void 0 ? "code" : _r, _s = _k.cacheTime, cacheTime = _s === void 0 ? 60 : _s, _t = _k.errorCodeMap, errorCodeMap = _t === void 0 ? {} : _t, _u = _k.successCodes, successCodes = _u === void 0 ? ["0", "200"] : _u, _v = _k.httpErrorCodeMap, httpErrorCodeMap = _v === void 0 ? {} : _v, _w = _k.throwError, throwError = _w === void 0 ? true : _w, _x = _k.retryTimes, retryTimes = _x === void 0 ? 0 : _x;
|
|
67
72
|
if (enableCache) {
|
|
68
73
|
cacheItem = cache.getCache(requestDataOrParams);
|
|
69
74
|
if (cacheItem) {
|
|
@@ -73,7 +78,7 @@ function createBaseRequest(baseOptions) {
|
|
|
73
78
|
return [2 /*return*/, instance
|
|
74
79
|
.request(__assign({ method: method, url: url, data: data, params: params }, finalAxiosOptions))
|
|
75
80
|
.then(function (res) { return __awaiter(_this, void 0, void 0, function () {
|
|
76
|
-
var errorCode, _a, _b, _c, customHandler, err, _d, _e, replaceResData, _f, handlerThrowError, _g;
|
|
81
|
+
var errorCode, _a, _b, _c, customHandler, err, retryTask, _d, _e, replaceResData, _f, handlerThrowError, _g, retryTask;
|
|
77
82
|
return __generator(this, function (_h) {
|
|
78
83
|
switch (_h.label) {
|
|
79
84
|
case 0:
|
|
@@ -84,20 +89,22 @@ function createBaseRequest(baseOptions) {
|
|
|
84
89
|
}
|
|
85
90
|
return [2 /*return*/, res.data];
|
|
86
91
|
}
|
|
87
|
-
// 不在成功 code 中,意味着请求失败
|
|
88
|
-
if (retryTimes > 0) {
|
|
89
|
-
return [2 /*return*/, request(requestParam, __assign(__assign({}, options), { retryTimes: retryTimes - 1 }))];
|
|
90
|
-
}
|
|
91
92
|
_a = errorCodeMap, _b = errorCode, _c = _a[_b], customHandler = _c === void 0 ? defaultErrorCodeHandler : _c;
|
|
92
93
|
err = new RequestError("服务端错误", "server", res);
|
|
93
94
|
if (!(typeof customHandler === "string")) return [3 /*break*/, 1];
|
|
94
95
|
defaultMessageShower(customHandler);
|
|
96
|
+
retryTask = retry();
|
|
97
|
+
if (retryTask)
|
|
98
|
+
return [2 /*return*/, retryTask];
|
|
95
99
|
return [3 /*break*/, 3];
|
|
96
100
|
case 1:
|
|
97
101
|
_g = Object;
|
|
98
102
|
return [4 /*yield*/, customHandler(errorCode, res.data, res, __assign(__assign({}, requestOptions), requestParam))];
|
|
99
103
|
case 2:
|
|
100
104
|
_d = _g.apply(void 0, [(_h.sent())]), _e = _d.replaceResData, replaceResData = _e === void 0 ? res.data : _e, _f = _d.throwError, handlerThrowError = _f === void 0 ? "default" : _f;
|
|
105
|
+
retryTask = retry();
|
|
106
|
+
if (retryTask)
|
|
107
|
+
return [2 /*return*/, retryTask];
|
|
101
108
|
res.data = replaceResData;
|
|
102
109
|
switch (handlerThrowError) {
|
|
103
110
|
case true:
|
|
@@ -114,25 +121,28 @@ function createBaseRequest(baseOptions) {
|
|
|
114
121
|
}
|
|
115
122
|
});
|
|
116
123
|
}); }, function (error) { return __awaiter(_this, void 0, void 0, function () {
|
|
117
|
-
var resData, _a, _b, _c, customHandler, err, _d, _e, replaceResData, _f, handlerThrowError, _g, resData, err, _h, _j, replaceResData, _k, handlerThrowError, _l;
|
|
124
|
+
var resData, _a, _b, _c, customHandler, err, retryTask, _d, _e, replaceResData, _f, handlerThrowError, _g, retryTask, resData, err, _h, _j, replaceResData, _k, handlerThrowError, _l, retryTask;
|
|
118
125
|
return __generator(this, function (_m) {
|
|
119
126
|
switch (_m.label) {
|
|
120
127
|
case 0:
|
|
121
|
-
if (retryTimes > 0) {
|
|
122
|
-
return [2 /*return*/, request(requestParam, __assign(__assign({}, options), { retryTimes: retryTimes - 1 }))];
|
|
123
|
-
}
|
|
124
128
|
if (!error.response) return [3 /*break*/, 4];
|
|
125
129
|
resData = error;
|
|
126
130
|
_a = httpErrorCodeMap, _b = error.response.status, _c = _a[_b], customHandler = _c === void 0 ? defaultHttpErrorCodeHandler : _c;
|
|
127
131
|
err = new RequestError("服务端错误", "http", error);
|
|
128
132
|
if (!(typeof customHandler === "string")) return [3 /*break*/, 1];
|
|
129
133
|
defaultMessageShower(customHandler);
|
|
134
|
+
retryTask = retry();
|
|
135
|
+
if (retryTask)
|
|
136
|
+
return [2 /*return*/, retryTask];
|
|
130
137
|
return [3 /*break*/, 3];
|
|
131
138
|
case 1:
|
|
132
139
|
_g = Object;
|
|
133
140
|
return [4 /*yield*/, customHandler(error.response.status, error, __assign(__assign({}, requestOptions), requestParam))];
|
|
134
141
|
case 2:
|
|
135
142
|
_d = _g.apply(void 0, [(_m.sent())]), _e = _d.replaceResData, replaceResData = _e === void 0 ? error : _e, _f = _d.throwError, handlerThrowError = _f === void 0 ? "default" : _f;
|
|
143
|
+
retryTask = retry();
|
|
144
|
+
if (retryTask)
|
|
145
|
+
return [2 /*return*/, retryTask];
|
|
136
146
|
resData = replaceResData;
|
|
137
147
|
switch (handlerThrowError) {
|
|
138
148
|
case true:
|
|
@@ -155,6 +165,9 @@ function createBaseRequest(baseOptions) {
|
|
|
155
165
|
return [4 /*yield*/, otherErrorHandler(error)];
|
|
156
166
|
case 5:
|
|
157
167
|
_h = (_l.apply(void 0, [(_m.sent())])), _j = _h.replaceResData, replaceResData = _j === void 0 ? error : _j, _k = _h.throwError, handlerThrowError = _k === void 0 ? "default" : _k;
|
|
168
|
+
retryTask = retry();
|
|
169
|
+
if (retryTask)
|
|
170
|
+
return [2 /*return*/, retryTask];
|
|
158
171
|
resData = replaceResData;
|
|
159
172
|
switch (handlerThrowError) {
|
|
160
173
|
case true:
|
package/package.json
CHANGED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
function deepAssign(target) {
|
|
4
|
-
var sources = [];
|
|
5
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
6
|
-
sources[_i - 1] = arguments[_i];
|
|
7
|
-
}
|
|
8
|
-
for (var _a = 0, sources_1 = sources; _a < sources_1.length; _a++) {
|
|
9
|
-
var source = sources_1[_a];
|
|
10
|
-
for (var key in source) {
|
|
11
|
-
var val = source[key];
|
|
12
|
-
if (val &&
|
|
13
|
-
typeof val === 'object' &&
|
|
14
|
-
!Array.isArray(val)) {
|
|
15
|
-
target[key] = deepAssign(target[key] || {}, val);
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
target[key] = val;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return target;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
exports.deepAssign = deepAssign;
|
package/es/_utils/deepAssign.mjs
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
function deepAssign(target) {
|
|
2
|
-
var sources = [];
|
|
3
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
4
|
-
sources[_i - 1] = arguments[_i];
|
|
5
|
-
}
|
|
6
|
-
for (var _a = 0, sources_1 = sources; _a < sources_1.length; _a++) {
|
|
7
|
-
var source = sources_1[_a];
|
|
8
|
-
for (var key in source) {
|
|
9
|
-
var val = source[key];
|
|
10
|
-
if (val &&
|
|
11
|
-
typeof val === 'object' &&
|
|
12
|
-
!Array.isArray(val)) {
|
|
13
|
-
target[key] = deepAssign(target[key] || {}, val);
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
target[key] = val;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return target;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export { deepAssign };
|