@whitesev/utils 2.6.5 → 2.6.6
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/dist/index.amd.js +7096 -7059
- package/dist/index.amd.js.map +1 -1
- package/dist/index.cjs.js +7094 -7057
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +7092 -7055
- package/dist/index.esm.js.map +1 -1
- package/dist/index.iife.js +7097 -7060
- package/dist/index.iife.js.map +1 -1
- package/dist/index.system.js +7099 -7062
- package/dist/index.system.js.map +1 -1
- package/dist/index.umd.js +7100 -7063
- package/dist/index.umd.js.map +1 -1
- package/dist/types/src/Httpx.d.ts +176 -176
- package/dist/types/src/Utils.d.ts +6 -0
- package/dist/types/src/types/Httpx.d.ts +24 -6
- package/package.json +1 -1
- package/src/Httpx.ts +131 -109
- package/src/Utils.ts +16 -0
- package/src/types/Httpx.d.ts +24 -6
|
@@ -1,176 +1,176 @@
|
|
|
1
|
-
import type { HttpxHookErrorData, HttpxRequestOption,
|
|
2
|
-
declare class Httpx {
|
|
3
|
-
#private;
|
|
4
|
-
private GM_Api;
|
|
5
|
-
private HttpxRequestHook;
|
|
6
|
-
private HttpxResponseHook;
|
|
7
|
-
private HttpxRequestOption;
|
|
8
|
-
private HttpxCallBack;
|
|
9
|
-
private HttpxRequest;
|
|
10
|
-
/**
|
|
11
|
-
*
|
|
12
|
-
* @param
|
|
13
|
-
*/
|
|
14
|
-
constructor(
|
|
15
|
-
/**
|
|
16
|
-
*
|
|
17
|
-
* @param
|
|
18
|
-
*/
|
|
19
|
-
config(
|
|
20
|
-
/**
|
|
21
|
-
* 拦截器
|
|
22
|
-
*/
|
|
23
|
-
interceptors: {
|
|
24
|
-
/**
|
|
25
|
-
* 请求拦截器
|
|
26
|
-
*/
|
|
27
|
-
request: {
|
|
28
|
-
context: Httpx;
|
|
29
|
-
/**
|
|
30
|
-
* 添加拦截器
|
|
31
|
-
* @param fn 设置的请求前回调函数,如果返回配置,则使用返回的配置,如果返回null|undefined,则阻止请求
|
|
32
|
-
*/
|
|
33
|
-
use(fn: <T extends Required<HttpxRequestOption>>(details: T) => void | T | Promise<void | T>): string | undefined;
|
|
34
|
-
/**
|
|
35
|
-
* 移除拦截器
|
|
36
|
-
* @param id 通过use返回的id
|
|
37
|
-
*/
|
|
38
|
-
eject(id: string): boolean;
|
|
39
|
-
/**
|
|
40
|
-
* 移除所有拦截器
|
|
41
|
-
*/
|
|
42
|
-
ejectAll(): void;
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* 响应拦截器
|
|
46
|
-
*/
|
|
47
|
-
response: {
|
|
48
|
-
context: Httpx;
|
|
49
|
-
/**
|
|
50
|
-
* 添加拦截器
|
|
51
|
-
* @param successFn 设置的响应后回调函数,如果返回响应,则使用返回的响应,如果返回null|undefined,则阻止响应
|
|
52
|
-
* + 2xx 范围内的状态码都会触发该函数
|
|
53
|
-
* @param errorFn 设置的响应后回调函数,如果返回响应,则使用返回的响应,如果返回null|undefined,则阻止响应
|
|
54
|
-
* + 超出 2xx 范围的状态码都会触发该函数
|
|
55
|
-
*/
|
|
56
|
-
use(successFn?: <T extends HttpxResponseData<HttpxRequestOption>>(response: T, details: HttpxRequestOption) => void | T, errorFn?: <T extends HttpxHookErrorData>(data: T) => void | T | Promise<void | T>): string | undefined;
|
|
57
|
-
/**
|
|
58
|
-
* 移除拦截器
|
|
59
|
-
* @param id 通过use返回的id
|
|
60
|
-
*/
|
|
61
|
-
eject(id: string): boolean;
|
|
62
|
-
/**
|
|
63
|
-
* 移除所有拦截器
|
|
64
|
-
*/
|
|
65
|
-
ejectAll(): void;
|
|
66
|
-
};
|
|
67
|
-
};
|
|
68
|
-
/**
|
|
69
|
-
* 修改xmlHttpRequest
|
|
70
|
-
* @param httpRequest 网络请求函数
|
|
71
|
-
*/
|
|
72
|
-
setXMLHttpRequest(httpRequest: Function): void;
|
|
73
|
-
/**
|
|
74
|
-
* GET 请求
|
|
75
|
-
* @param url 网址
|
|
76
|
-
*/
|
|
77
|
-
get<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
78
|
-
/**
|
|
79
|
-
* GET 请求
|
|
80
|
-
* @param details 配置
|
|
81
|
-
*/
|
|
82
|
-
get<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
83
|
-
/**
|
|
84
|
-
* GET 请求
|
|
85
|
-
* @param url 网址
|
|
86
|
-
* @param details 配置
|
|
87
|
-
*/
|
|
88
|
-
get<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
89
|
-
/**
|
|
90
|
-
* POST 请求
|
|
91
|
-
* @param details 配置
|
|
92
|
-
*/
|
|
93
|
-
post<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
94
|
-
/**
|
|
95
|
-
* POST 请求
|
|
96
|
-
* @param url 网址
|
|
97
|
-
*/
|
|
98
|
-
post<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
99
|
-
/**
|
|
100
|
-
* POST 请求
|
|
101
|
-
* @param url 网址
|
|
102
|
-
* @param details 配置
|
|
103
|
-
*/
|
|
104
|
-
post<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
105
|
-
/**
|
|
106
|
-
* HEAD 请求
|
|
107
|
-
* @param details 配置
|
|
108
|
-
*/
|
|
109
|
-
head<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
110
|
-
/**
|
|
111
|
-
* HEAD 请求
|
|
112
|
-
* @param url 网址
|
|
113
|
-
*/
|
|
114
|
-
head<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
115
|
-
/**
|
|
116
|
-
* HEAD 请求
|
|
117
|
-
* @param url 网址
|
|
118
|
-
* @param details 配置
|
|
119
|
-
*/
|
|
120
|
-
head<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
121
|
-
/**
|
|
122
|
-
* OPTIONS 请求
|
|
123
|
-
* @param details 配置
|
|
124
|
-
*/
|
|
125
|
-
options<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
126
|
-
/**
|
|
127
|
-
* OPTIONS 请求
|
|
128
|
-
* @param url 网址
|
|
129
|
-
*/
|
|
130
|
-
options<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
131
|
-
/**
|
|
132
|
-
* OPTIONS 请求
|
|
133
|
-
* @param url 网址
|
|
134
|
-
* @param details 配置
|
|
135
|
-
*/
|
|
136
|
-
options<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
137
|
-
/**
|
|
138
|
-
* DELETE 请求
|
|
139
|
-
* @param details 配置
|
|
140
|
-
*/
|
|
141
|
-
delete<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
142
|
-
/**
|
|
143
|
-
* DELETE 请求
|
|
144
|
-
* @param url 网址
|
|
145
|
-
*/
|
|
146
|
-
delete<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
147
|
-
/**
|
|
148
|
-
* DELETE 请求
|
|
149
|
-
* @param url 网址
|
|
150
|
-
* @param details 配置
|
|
151
|
-
*/
|
|
152
|
-
delete<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
153
|
-
/**
|
|
154
|
-
* PUT 请求
|
|
155
|
-
* @param details 配置
|
|
156
|
-
*/
|
|
157
|
-
put<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
158
|
-
/**
|
|
159
|
-
* PUT 请求
|
|
160
|
-
* @param url 网址
|
|
161
|
-
*/
|
|
162
|
-
put<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
163
|
-
/**
|
|
164
|
-
* PUT 请求
|
|
165
|
-
* @param url 网址
|
|
166
|
-
* @param details 配置
|
|
167
|
-
*/
|
|
168
|
-
put<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
169
|
-
/**
|
|
170
|
-
* 发送请求
|
|
171
|
-
* @param details 配置
|
|
172
|
-
* @param beforeRequestOption 处理请求前的配置
|
|
173
|
-
*/
|
|
174
|
-
request<T extends HttpxRequestOption>(details: T, beforeRequestOption?: (option: Required<T>) => void): HttpxPromise<HttpxResponse<T>>;
|
|
175
|
-
}
|
|
176
|
-
export { Httpx };
|
|
1
|
+
import type { HttpxHookErrorData, HttpxRequestOption, HttpxResponse, HttpxResponseData, HttpxPromise, HttpxInitOption } from "./types/Httpx";
|
|
2
|
+
declare class Httpx {
|
|
3
|
+
#private;
|
|
4
|
+
private GM_Api;
|
|
5
|
+
private HttpxRequestHook;
|
|
6
|
+
private HttpxResponseHook;
|
|
7
|
+
private HttpxRequestOption;
|
|
8
|
+
private HttpxCallBack;
|
|
9
|
+
private HttpxRequest;
|
|
10
|
+
/**
|
|
11
|
+
* 实例化
|
|
12
|
+
* @param option 初始化配置
|
|
13
|
+
*/
|
|
14
|
+
constructor(option?: Partial<HttpxInitOption>);
|
|
15
|
+
/**
|
|
16
|
+
* 覆盖当前配置
|
|
17
|
+
* @param option
|
|
18
|
+
*/
|
|
19
|
+
config(option?: Partial<HttpxInitOption>): void;
|
|
20
|
+
/**
|
|
21
|
+
* 拦截器
|
|
22
|
+
*/
|
|
23
|
+
interceptors: {
|
|
24
|
+
/**
|
|
25
|
+
* 请求拦截器
|
|
26
|
+
*/
|
|
27
|
+
request: {
|
|
28
|
+
context: Httpx;
|
|
29
|
+
/**
|
|
30
|
+
* 添加拦截器
|
|
31
|
+
* @param fn 设置的请求前回调函数,如果返回配置,则使用返回的配置,如果返回null|undefined,则阻止请求
|
|
32
|
+
*/
|
|
33
|
+
use(fn: <T extends Required<HttpxRequestOption>>(details: T) => void | T | Promise<void | T>): string | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* 移除拦截器
|
|
36
|
+
* @param id 通过use返回的id
|
|
37
|
+
*/
|
|
38
|
+
eject(id: string): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* 移除所有拦截器
|
|
41
|
+
*/
|
|
42
|
+
ejectAll(): void;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* 响应拦截器
|
|
46
|
+
*/
|
|
47
|
+
response: {
|
|
48
|
+
context: Httpx;
|
|
49
|
+
/**
|
|
50
|
+
* 添加拦截器
|
|
51
|
+
* @param successFn 设置的响应后回调函数,如果返回响应,则使用返回的响应,如果返回null|undefined,则阻止响应
|
|
52
|
+
* + 2xx 范围内的状态码都会触发该函数
|
|
53
|
+
* @param errorFn 设置的响应后回调函数,如果返回响应,则使用返回的响应,如果返回null|undefined,则阻止响应
|
|
54
|
+
* + 超出 2xx 范围的状态码都会触发该函数
|
|
55
|
+
*/
|
|
56
|
+
use(successFn?: <T extends HttpxResponseData<HttpxRequestOption>>(response: T, details: HttpxRequestOption) => void | T, errorFn?: <T extends HttpxHookErrorData>(data: T) => void | T | Promise<void | T>): string | undefined;
|
|
57
|
+
/**
|
|
58
|
+
* 移除拦截器
|
|
59
|
+
* @param id 通过use返回的id
|
|
60
|
+
*/
|
|
61
|
+
eject(id: string): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* 移除所有拦截器
|
|
64
|
+
*/
|
|
65
|
+
ejectAll(): void;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* 修改xmlHttpRequest
|
|
70
|
+
* @param httpRequest 网络请求函数
|
|
71
|
+
*/
|
|
72
|
+
setXMLHttpRequest(httpRequest: Function): void;
|
|
73
|
+
/**
|
|
74
|
+
* GET 请求
|
|
75
|
+
* @param url 网址
|
|
76
|
+
*/
|
|
77
|
+
get<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
78
|
+
/**
|
|
79
|
+
* GET 请求
|
|
80
|
+
* @param details 配置
|
|
81
|
+
*/
|
|
82
|
+
get<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
83
|
+
/**
|
|
84
|
+
* GET 请求
|
|
85
|
+
* @param url 网址
|
|
86
|
+
* @param details 配置
|
|
87
|
+
*/
|
|
88
|
+
get<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
89
|
+
/**
|
|
90
|
+
* POST 请求
|
|
91
|
+
* @param details 配置
|
|
92
|
+
*/
|
|
93
|
+
post<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
94
|
+
/**
|
|
95
|
+
* POST 请求
|
|
96
|
+
* @param url 网址
|
|
97
|
+
*/
|
|
98
|
+
post<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
99
|
+
/**
|
|
100
|
+
* POST 请求
|
|
101
|
+
* @param url 网址
|
|
102
|
+
* @param details 配置
|
|
103
|
+
*/
|
|
104
|
+
post<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
105
|
+
/**
|
|
106
|
+
* HEAD 请求
|
|
107
|
+
* @param details 配置
|
|
108
|
+
*/
|
|
109
|
+
head<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
110
|
+
/**
|
|
111
|
+
* HEAD 请求
|
|
112
|
+
* @param url 网址
|
|
113
|
+
*/
|
|
114
|
+
head<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
115
|
+
/**
|
|
116
|
+
* HEAD 请求
|
|
117
|
+
* @param url 网址
|
|
118
|
+
* @param details 配置
|
|
119
|
+
*/
|
|
120
|
+
head<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
121
|
+
/**
|
|
122
|
+
* OPTIONS 请求
|
|
123
|
+
* @param details 配置
|
|
124
|
+
*/
|
|
125
|
+
options<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
126
|
+
/**
|
|
127
|
+
* OPTIONS 请求
|
|
128
|
+
* @param url 网址
|
|
129
|
+
*/
|
|
130
|
+
options<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
131
|
+
/**
|
|
132
|
+
* OPTIONS 请求
|
|
133
|
+
* @param url 网址
|
|
134
|
+
* @param details 配置
|
|
135
|
+
*/
|
|
136
|
+
options<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
137
|
+
/**
|
|
138
|
+
* DELETE 请求
|
|
139
|
+
* @param details 配置
|
|
140
|
+
*/
|
|
141
|
+
delete<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
142
|
+
/**
|
|
143
|
+
* DELETE 请求
|
|
144
|
+
* @param url 网址
|
|
145
|
+
*/
|
|
146
|
+
delete<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
147
|
+
/**
|
|
148
|
+
* DELETE 请求
|
|
149
|
+
* @param url 网址
|
|
150
|
+
* @param details 配置
|
|
151
|
+
*/
|
|
152
|
+
delete<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
153
|
+
/**
|
|
154
|
+
* PUT 请求
|
|
155
|
+
* @param details 配置
|
|
156
|
+
*/
|
|
157
|
+
put<T extends HttpxRequestOption>(details: T): HttpxPromise<HttpxResponse<T>>;
|
|
158
|
+
/**
|
|
159
|
+
* PUT 请求
|
|
160
|
+
* @param url 网址
|
|
161
|
+
*/
|
|
162
|
+
put<T extends HttpxRequestOption>(url: string): HttpxPromise<HttpxResponse<T>>;
|
|
163
|
+
/**
|
|
164
|
+
* PUT 请求
|
|
165
|
+
* @param url 网址
|
|
166
|
+
* @param details 配置
|
|
167
|
+
*/
|
|
168
|
+
put<T extends HttpxRequestOption>(url: string, details: T): HttpxPromise<HttpxResponse<T>>;
|
|
169
|
+
/**
|
|
170
|
+
* 发送请求
|
|
171
|
+
* @param details 配置
|
|
172
|
+
* @param beforeRequestOption 处理请求前的配置
|
|
173
|
+
*/
|
|
174
|
+
request<T extends HttpxRequestOption>(details: T, beforeRequestOption?: (option: Required<T>) => void): HttpxPromise<HttpxResponse<T>>;
|
|
175
|
+
}
|
|
176
|
+
export { Httpx };
|
|
@@ -1799,6 +1799,12 @@ declare class Utils {
|
|
|
1799
1799
|
* Utils.toUrl("/s?word=666");
|
|
1800
1800
|
*/
|
|
1801
1801
|
toUrl(text: string): URL;
|
|
1802
|
+
/**
|
|
1803
|
+
* 覆盖对象中的函数this指向
|
|
1804
|
+
* @param target 需要覆盖的对象
|
|
1805
|
+
* @param [objectThis] 覆盖的this指向,如果为传入,则默认为对象本身
|
|
1806
|
+
*/
|
|
1807
|
+
coverObjectFunctionThis(target: any, objectThis?: any): void;
|
|
1802
1808
|
/**
|
|
1803
1809
|
* 生成uuid
|
|
1804
1810
|
* @example
|
|
@@ -1210,12 +1210,7 @@ export declare interface HttpxRequestOption {
|
|
|
1210
1210
|
/**
|
|
1211
1211
|
* 自定义的配置请求
|
|
1212
1212
|
*/
|
|
1213
|
-
export declare interface HttpxRequestOptionConfig extends
|
|
1214
|
-
/**
|
|
1215
|
-
* (可选)是否输出请求配置
|
|
1216
|
-
*/
|
|
1217
|
-
logDetails?: boolean;
|
|
1218
|
-
}
|
|
1213
|
+
export declare interface HttpxRequestOptionConfig extends HttpxInitOption {}
|
|
1219
1214
|
/**
|
|
1220
1215
|
* 响应的数据的data
|
|
1221
1216
|
*/
|
|
@@ -1334,3 +1329,26 @@ export declare interface HttpxHookErrorData {
|
|
|
1334
1329
|
export declare interface HttpxPromise<T> extends Promise<T> {
|
|
1335
1330
|
abort: () => void;
|
|
1336
1331
|
}
|
|
1332
|
+
|
|
1333
|
+
/**
|
|
1334
|
+
* httpx的初始化配置
|
|
1335
|
+
*/
|
|
1336
|
+
export declare interface HttpxInitOption extends HttpxRequestOption {
|
|
1337
|
+
/**
|
|
1338
|
+
* 实例化,可传入GM_xmlhttpRequest,未传入则使用window.fetch
|
|
1339
|
+
*/
|
|
1340
|
+
xmlHttpRequest?: Function;
|
|
1341
|
+
/**
|
|
1342
|
+
* `baseURL` 将自动加在 `url` 前面,除非 `url` 是一个绝对 URL。
|
|
1343
|
+
*/
|
|
1344
|
+
baseURL?: string | undefined;
|
|
1345
|
+
/**
|
|
1346
|
+
* 重试次数
|
|
1347
|
+
* @default 0
|
|
1348
|
+
*/
|
|
1349
|
+
retry?: number;
|
|
1350
|
+
/**
|
|
1351
|
+
* (可选)是否输出请求配置
|
|
1352
|
+
*/
|
|
1353
|
+
logDetails?: boolean;
|
|
1354
|
+
}
|