@jayfong/x-request 2.13.0 → 2.15.0
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/lib/_cjs/index.js +23 -23
- package/lib/index.d.ts +7 -2
- package/lib/index.js +23 -22
- package/package.json +1 -1
package/lib/_cjs/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
exports.__esModule = true;
|
|
5
|
-
exports.XRequestFormUrlencoded = exports.XRequestFormStream = exports.XRequestFormFile = exports.XRequestFormData = exports.XRequest = void 0;
|
|
5
|
+
exports.xr = exports.XRequestFormUrlencoded = exports.XRequestFormStream = exports.XRequestFormFile = exports.XRequestFormData = exports.XRequest = void 0;
|
|
6
6
|
var _assert = _interopRequireDefault(require("assert"));
|
|
7
7
|
var _formData = _interopRequireDefault(require("form-data"));
|
|
8
8
|
var _formstream = _interopRequireDefault(require("formstream"));
|
|
@@ -77,6 +77,16 @@ exports.XRequestFormFile = XRequestFormFile;
|
|
|
77
77
|
class XRequest {
|
|
78
78
|
static getGotOptions(options, responseType) {
|
|
79
79
|
var _gotOptions$headers, _userAgent, _gotOptions$headers$_, _options$userAgent;
|
|
80
|
+
let url = options.url;
|
|
81
|
+
if (options.query) {
|
|
82
|
+
const _url = new URL(url);
|
|
83
|
+
const query = options.query instanceof URLSearchParams ? options.query : new URLSearchParams(options.query);
|
|
84
|
+
query.forEach((v, k) => {
|
|
85
|
+
_url.searchParams.set(k, v);
|
|
86
|
+
});
|
|
87
|
+
url = _url.toString();
|
|
88
|
+
}
|
|
89
|
+
options.url = url;
|
|
80
90
|
const gotOptions = {
|
|
81
91
|
url: options.url,
|
|
82
92
|
responseType: responseType === 'stream' ? undefined : responseType,
|
|
@@ -117,15 +127,6 @@ class XRequest {
|
|
|
117
127
|
return gotOptions;
|
|
118
128
|
}
|
|
119
129
|
static get(options, responseType) {
|
|
120
|
-
let url = options.url;
|
|
121
|
-
if (options.data) {
|
|
122
|
-
const _url = new URL(url);
|
|
123
|
-
Object.keys(options.data).forEach(key => {
|
|
124
|
-
_url.searchParams.set(key, options.data[key]);
|
|
125
|
-
});
|
|
126
|
-
url = _url.toString();
|
|
127
|
-
}
|
|
128
|
-
options.url = url;
|
|
129
130
|
const res = (0, _got.default)({
|
|
130
131
|
method: 'GET',
|
|
131
132
|
...this.getGotOptions(options, responseType || 'buffer')
|
|
@@ -202,29 +203,22 @@ class XRequest {
|
|
|
202
203
|
static formFile(file, options) {
|
|
203
204
|
return new XRequestFormFile(file, options);
|
|
204
205
|
}
|
|
206
|
+
static extend(options) {
|
|
207
|
+
return new XRequest(options);
|
|
208
|
+
}
|
|
205
209
|
constructor(options) {
|
|
206
210
|
this.options = options;
|
|
207
211
|
}
|
|
208
212
|
get(options, responseType) {
|
|
209
|
-
var _this$options;
|
|
210
213
|
return XRequest.get({
|
|
211
214
|
...this.options,
|
|
212
|
-
...options
|
|
213
|
-
headers: {
|
|
214
|
-
...((_this$options = this.options) == null ? void 0 : _this$options.headers),
|
|
215
|
-
...options.headers
|
|
216
|
-
}
|
|
215
|
+
...options
|
|
217
216
|
}, responseType);
|
|
218
217
|
}
|
|
219
218
|
post(options, responseType) {
|
|
220
|
-
var _this$options2;
|
|
221
219
|
return XRequest.post({
|
|
222
220
|
...this.options,
|
|
223
|
-
...options
|
|
224
|
-
headers: {
|
|
225
|
-
...((_this$options2 = this.options) == null ? void 0 : _this$options2.headers),
|
|
226
|
-
...options.headers
|
|
227
|
-
}
|
|
221
|
+
...options
|
|
228
222
|
}, responseType);
|
|
229
223
|
}
|
|
230
224
|
async getText(options) {
|
|
@@ -260,5 +254,11 @@ class XRequest {
|
|
|
260
254
|
formFile(file, options) {
|
|
261
255
|
return XRequest.formFile(file, options);
|
|
262
256
|
}
|
|
257
|
+
extend(options) {
|
|
258
|
+
return new XRequest({
|
|
259
|
+
...this.options,
|
|
260
|
+
...options
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
263
|
}
|
|
264
|
-
exports.XRequest = XRequest;
|
|
264
|
+
exports.xr = exports.XRequest = XRequest;
|
package/lib/index.d.ts
CHANGED
|
@@ -11,6 +11,10 @@ export interface XRequestOptions {
|
|
|
11
11
|
* 请求地址
|
|
12
12
|
*/
|
|
13
13
|
url: string;
|
|
14
|
+
/**
|
|
15
|
+
* 查询参数
|
|
16
|
+
*/
|
|
17
|
+
query?: URLSearchParams | ConstructorParameters<typeof URLSearchParams>[0];
|
|
14
18
|
/**
|
|
15
19
|
* 代理地址
|
|
16
20
|
*/
|
|
@@ -52,13 +56,11 @@ export interface XRequestResponse<T> {
|
|
|
52
56
|
data: T;
|
|
53
57
|
}
|
|
54
58
|
export interface XRequestGetOptions extends XRequestOptions {
|
|
55
|
-
data?: Record<string, any>;
|
|
56
59
|
}
|
|
57
60
|
export interface XRequestPostOptions extends XRequestOptions {
|
|
58
61
|
data?: Record<string, any> | FormData | URLSearchParams;
|
|
59
62
|
}
|
|
60
63
|
export interface XRequestGetStreamOptions extends XRequestOptions {
|
|
61
|
-
data?: Record<string, any>;
|
|
62
64
|
}
|
|
63
65
|
export interface XRequestPostStreamOptions extends XRequestOptions {
|
|
64
66
|
data?: Record<string, any> | FormData | URLSearchParams | FormStream;
|
|
@@ -125,6 +127,7 @@ export declare class XRequest {
|
|
|
125
127
|
name?: string;
|
|
126
128
|
type?: string;
|
|
127
129
|
}): XRequestFormFile;
|
|
130
|
+
static extend(options: OmitStrict<XRequestOptions, 'url'>): XRequest;
|
|
128
131
|
constructor(options?: OmitStrict<XRequestOptions, 'url'>);
|
|
129
132
|
get(options: XRequestGetStreamOptions): Promise<XRequestResponse<Buffer>>;
|
|
130
133
|
get(options: XRequestGetStreamOptions, responseType: 'buffer'): Promise<XRequestResponse<Buffer>>;
|
|
@@ -158,4 +161,6 @@ export declare class XRequest {
|
|
|
158
161
|
name?: string;
|
|
159
162
|
type?: string;
|
|
160
163
|
}): XRequestFormFile;
|
|
164
|
+
extend(options: OmitStrict<XRequestOptions, 'url'>): XRequest;
|
|
161
165
|
}
|
|
166
|
+
export { XRequest as xr };
|
package/lib/index.js
CHANGED
|
@@ -68,6 +68,16 @@ export class XRequestFormFile {
|
|
|
68
68
|
export class XRequest {
|
|
69
69
|
static getGotOptions(options, responseType) {
|
|
70
70
|
var _gotOptions$headers, _userAgent, _gotOptions$headers$_, _options$userAgent;
|
|
71
|
+
let url = options.url;
|
|
72
|
+
if (options.query) {
|
|
73
|
+
const _url = new URL(url);
|
|
74
|
+
const query = options.query instanceof URLSearchParams ? options.query : new URLSearchParams(options.query);
|
|
75
|
+
query.forEach((v, k) => {
|
|
76
|
+
_url.searchParams.set(k, v);
|
|
77
|
+
});
|
|
78
|
+
url = _url.toString();
|
|
79
|
+
}
|
|
80
|
+
options.url = url;
|
|
71
81
|
const gotOptions = {
|
|
72
82
|
url: options.url,
|
|
73
83
|
responseType: responseType === 'stream' ? undefined : responseType,
|
|
@@ -108,15 +118,6 @@ export class XRequest {
|
|
|
108
118
|
return gotOptions;
|
|
109
119
|
}
|
|
110
120
|
static get(options, responseType) {
|
|
111
|
-
let url = options.url;
|
|
112
|
-
if (options.data) {
|
|
113
|
-
const _url = new URL(url);
|
|
114
|
-
Object.keys(options.data).forEach(key => {
|
|
115
|
-
_url.searchParams.set(key, options.data[key]);
|
|
116
|
-
});
|
|
117
|
-
url = _url.toString();
|
|
118
|
-
}
|
|
119
|
-
options.url = url;
|
|
120
121
|
const res = got({
|
|
121
122
|
method: 'GET',
|
|
122
123
|
...this.getGotOptions(options, responseType || 'buffer')
|
|
@@ -193,29 +194,22 @@ export class XRequest {
|
|
|
193
194
|
static formFile(file, options) {
|
|
194
195
|
return new XRequestFormFile(file, options);
|
|
195
196
|
}
|
|
197
|
+
static extend(options) {
|
|
198
|
+
return new XRequest(options);
|
|
199
|
+
}
|
|
196
200
|
constructor(options) {
|
|
197
201
|
this.options = options;
|
|
198
202
|
}
|
|
199
203
|
get(options, responseType) {
|
|
200
|
-
var _this$options;
|
|
201
204
|
return XRequest.get({
|
|
202
205
|
...this.options,
|
|
203
|
-
...options
|
|
204
|
-
headers: {
|
|
205
|
-
...((_this$options = this.options) == null ? void 0 : _this$options.headers),
|
|
206
|
-
...options.headers
|
|
207
|
-
}
|
|
206
|
+
...options
|
|
208
207
|
}, responseType);
|
|
209
208
|
}
|
|
210
209
|
post(options, responseType) {
|
|
211
|
-
var _this$options2;
|
|
212
210
|
return XRequest.post({
|
|
213
211
|
...this.options,
|
|
214
|
-
...options
|
|
215
|
-
headers: {
|
|
216
|
-
...((_this$options2 = this.options) == null ? void 0 : _this$options2.headers),
|
|
217
|
-
...options.headers
|
|
218
|
-
}
|
|
212
|
+
...options
|
|
219
213
|
}, responseType);
|
|
220
214
|
}
|
|
221
215
|
async getText(options) {
|
|
@@ -251,4 +245,11 @@ export class XRequest {
|
|
|
251
245
|
formFile(file, options) {
|
|
252
246
|
return XRequest.formFile(file, options);
|
|
253
247
|
}
|
|
254
|
-
|
|
248
|
+
extend(options) {
|
|
249
|
+
return new XRequest({
|
|
250
|
+
...this.options,
|
|
251
|
+
...options
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
export { XRequest as xr };
|