urllib 3.0.0-alpha.1 → 3.0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"HttpClient.js","sourceRoot":"","sources":["../HttpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpClient.js","sourceRoot":"","sources":["../HttpClient.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,10 @@
3
3
  /// <reference types="node" />
4
4
  /// <reference types="node" />
5
5
  import { Readable, Writable } from 'stream';
6
- import { LookupFunction } from 'net';
7
- export declare type HttpMethod = 'GET' | 'POST' | 'DELETE' | 'PUT' | 'HEAD' | 'OPTIONS' | 'PATCH' | 'TRACE' | 'CONNECT';
6
+ import { IncomingHttpHeaders } from 'http';
7
+ import type { HttpMethod as UndiciHttpMethod } from 'undici/types/dispatcher';
8
+ import type { HttpClientResponse } from './Response';
9
+ export declare type HttpMethod = UndiciHttpMethod;
8
10
  export declare type RequestURL = string | URL;
9
11
  export declare type FixJSONCtlCharsHandler = (data: string) => string;
10
12
  export declare type FixJSONCtlChars = boolean | FixJSONCtlCharsHandler;
@@ -13,12 +15,12 @@ export declare type RequestOptions = {
13
15
  method?: HttpMethod | Lowercase<HttpMethod>;
14
16
  /** Data to be sent. Will be stringify automatically. */
15
17
  data?: any;
16
- /** Force convert data to query string. */
17
- dataAsQueryString?: boolean;
18
18
  /** Manually set the content of payload. If set, data will be ignored. */
19
19
  content?: string | Buffer | Readable;
20
- /** Stream to be pipe to the remote. If set, data and content will be ignored.
21
- * Alias to `content` on Readable
20
+ /**
21
+ * @deprecated
22
+ * Stream to be pipe to the remote. If set, data and content will be ignored.
23
+ * Alias to `content = Readable`
22
24
  */
23
25
  stream?: Readable;
24
26
  /**
@@ -27,8 +29,6 @@ export declare type RequestOptions = {
27
29
  * will be called with data set null after finished writing.
28
30
  */
29
31
  writeStream?: Writable;
30
- /** consume the writeStream, invoke the callback after writeStream close. */
31
- consumeWriteStream?: boolean;
32
32
  /**
33
33
  * The files will send with multipart/form-data format, base on formstream.
34
34
  * If method not set, will use POST method by default.
@@ -41,19 +41,25 @@ export declare type RequestOptions = {
41
41
  * If it's text, the callbacked data would be a String.
42
42
  * If it's json, the data of callback would be a parsed JSON Object
43
43
  * and will auto set Accept: 'application/json' header.
44
- * Default is buffer.
44
+ * Default is 'buffer'.
45
45
  */
46
46
  dataType?: 'text' | 'json' | 'buffer' | 'stream';
47
47
  /**
48
+ * @deprecated
48
49
  * Let you get the res object when request connected, default false.
49
50
  * If set to true, `data` will be response readable stream.
50
- * Equal to `dataType = 'stream'`
51
+ * Alias to `dataType = 'stream'`
51
52
  */
52
53
  streaming?: boolean;
54
+ /**
55
+ * @deprecated
56
+ * Alias to `dataType = 'stream'`
57
+ */
58
+ customResponse?: boolean;
53
59
  /** Fix the control characters (U+0000 through U+001F) before JSON parse response. Default is false. */
54
60
  fixJSONCtlChars?: FixJSONCtlChars;
55
61
  /** Request headers. */
56
- headers?: Record<string, string>;
62
+ headers?: IncomingHttpHeaders;
57
63
  /**
58
64
  * Request timeout in milliseconds for connecting phase and response receiving phase.
59
65
  * Defaults to exports.
@@ -61,41 +67,12 @@ export declare type RequestOptions = {
61
67
  * timeout: [3000, 5000], which will set connecting timeout to 3s and response 5s.
62
68
  */
63
69
  timeout?: number | number[];
64
- /** username:password used in HTTP Basic Authorization. */
65
- auth?: string;
66
- /** username:password used in HTTP Digest Authorization. */
67
- digestAuth?: string;
68
- /**
69
- * An array of strings or Buffers of trusted certificates.
70
- * If this is omitted several well known "root" CAs will be used, like VeriSign.
71
- * These are used to authorize connections.
72
- * Notes: This is necessary only if the server uses the self - signed certificate
73
- */
74
- ca?: string | Buffer | string[] | Buffer[];
75
- /**
76
- * If true, the server certificate is verified against the list of supplied CAs.
77
- * An 'error' event is emitted if verification fails.Default: true.
78
- */
79
- rejectUnauthorized?: boolean;
80
- /** A string or Buffer containing the private key, certificate and CA certs of the server in PFX or PKCS12 format. */
81
- pfx?: string | Buffer;
82
70
  /**
83
- * A string or Buffer containing the private key of the client in PEM format.
84
- * Notes: This is necessary only if using the client certificate authentication
85
- */
86
- key?: string | Buffer;
87
- /**
88
- * A string or Buffer containing the certificate key of the client in PEM format.
89
- * Notes: This is necessary only if using the client certificate authentication
90
- */
91
- cert?: string | Buffer;
92
- /** A string of passphrase for the private key or pfx. */
93
- passphrase?: string;
94
- /** A string describing the ciphers to use or exclude. */
95
- ciphers?: string;
96
- /** The SSL method to use, e.g.SSLv3_method to force SSL version 3. */
97
- secureProtocol?: string;
98
- /** follow HTTP 3xx responses as redirects. defaults to false. */
71
+ * username:password used in HTTP Basic Authorization.
72
+ * Alias to `headers.authorization = xxx`
73
+ **/
74
+ auth?: string;
75
+ /** follow HTTP 3xx responses as redirects. defaults to true. */
99
76
  followRedirect?: boolean;
100
77
  /** The maximum number of redirects to follow, defaults to 10. */
101
78
  maxRedirects?: number;
@@ -103,19 +80,35 @@ export declare type RequestOptions = {
103
80
  formatRedirectUrl?: (a: any, b: any) => void;
104
81
  /** Before request hook, you can change every thing here. */
105
82
  beforeRequest?: (...args: any[]) => void;
106
- /** Accept gzip response content and auto decode it, default is false. */
83
+ /** Accept `gzip, br` response content and auto decode it, default is false. */
84
+ compressed?: boolean;
85
+ /**
86
+ * @deprecated
87
+ * Alias to compressed
88
+ * */
107
89
  gzip?: boolean;
108
- /** Enable timing or not, default is false. */
90
+ /**
91
+ * @deprecated
92
+ * Enable timing or not, default is false.
93
+ * */
109
94
  timing?: boolean;
110
95
  /**
111
- * Custom DNS lookup function, default is dns.lookup.
112
- * Require node >= 4.0.0(for http protocol) and node >=8(for https protocol)
96
+ * Auto retry times on 5xx response, default is 0. Don't work on streaming request
97
+ * It's not supported by using retry and writeStream, because the retry request can't stop the stream which is consuming.
98
+ **/
99
+ retry?: number;
100
+ /** Wait a delay(ms) between retries */
101
+ retryDelay?: number;
102
+ /**
103
+ * Determine whether retry, a response object as the first argument.
104
+ * It will retry when status >= 500 by default. Request error is not included.
113
105
  */
114
- lookup?: LookupFunction;
106
+ isRetry?: (response: HttpClientResponse) => boolean;
107
+ /** Default: `null` */
108
+ opaque?: unknown;
115
109
  /**
116
- * check request address to protect from SSRF and similar attacks.
117
- * It receive two arguments(ip and family) and should return true or false to identified the address is legal or not.
118
- * It rely on lookup and have the same version requirement.
110
+ * @deprecated
111
+ * Maybe you should use opaque instead
119
112
  */
120
- checkAddress?: (ip: string, family: number | string) => boolean;
113
+ ctx?: unknown;
121
114
  };
@@ -1,12 +1,11 @@
1
1
  /// <reference types="node" />
2
2
  /// <reference types="node" />
3
- import { ReadableStream } from 'stream/web';
4
3
  import { Readable } from 'stream';
4
+ import { IncomingHttpHeaders } from 'http';
5
5
  export declare type HttpClientResponseMeta = {
6
6
  status: number;
7
7
  statusCode: number;
8
- statusMessage: string;
9
- headers: Record<string, string>;
8
+ headers: IncomingHttpHeaders;
10
9
  size: number;
11
10
  aborted: boolean;
12
11
  rt: number;
@@ -17,19 +16,21 @@ export declare type HttpClientResponseMeta = {
17
16
  */
18
17
  timing: {
19
18
  contentDownload: number;
19
+ waiting: number;
20
20
  };
21
21
  };
22
- export declare type ReadableStreamWithMeta = (Readable | ReadableStream) & {
22
+ export declare type ReadableWithMeta = Readable & {
23
23
  status: number;
24
24
  statusCode: number;
25
- statusMessage: string;
26
- headers: Record<string, string>;
25
+ headers: IncomingHttpHeaders;
27
26
  };
28
27
  export declare type HttpClientResponse = {
28
+ opaque: unknown;
29
29
  data: any;
30
30
  status: number;
31
- headers: Record<string, string>;
31
+ headers: IncomingHttpHeaders;
32
32
  url: string;
33
33
  redirected: boolean;
34
- res: ReadableStreamWithMeta | HttpClientResponseMeta;
34
+ requestUrls: string[];
35
+ res: ReadableWithMeta | HttpClientResponseMeta;
35
36
  };
@@ -1,2 +1,3 @@
1
1
  import { FixJSONCtlChars } from './Request';
2
2
  export declare function parseJSON(data: string, fixJSONCtlChars?: FixJSONCtlChars): string;
3
+ export declare function sleep(ms: number): Promise<void>;
package/src/cjs/utils.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseJSON = void 0;
3
+ exports.sleep = exports.parseJSON = void 0;
4
4
  const JSONCtlCharsMap = {
5
5
  '"': '\\"',
6
6
  '\\': '\\\\',
@@ -47,4 +47,10 @@ function parseJSON(data, fixJSONCtlChars) {
47
47
  return data;
48
48
  }
49
49
  exports.parseJSON = parseJSON;
50
+ function sleep(ms) {
51
+ return new Promise(resolve => {
52
+ setTimeout(resolve, ms);
53
+ });
54
+ }
55
+ exports.sleep = sleep;
50
56
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../utils.ts"],"names":[],"mappings":";;;AAEA,MAAM,eAAe,GAAG;IACtB,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK,EAAE,SAAS;CACvB,CAAC;AACF,mCAAmC;AACnC,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAEhD,SAAS,cAAc,CAAC,CAAS;IAC/B,OAAO,eAAe,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;AACvD,CAAC;AAED,SAAgB,SAAS,CAAC,IAAY,EAAE,eAAiC;IACvE,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE;QACzC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;KAC9B;SAAM,IAAI,eAAe,EAAE;QAC1B,iDAAiD;QACjD,wDAAwD;QACxD,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;KAClC;IACD,IAAI;QACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACzB;IAAC,OAAO,GAAQ,EAAE;QACjB,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,EAAE;YAC9B,GAAG,CAAC,IAAI,GAAG,yBAAyB,CAAC;SACtC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE;YACtB,+BAA+B;YAC/B,GAAG,CAAC,OAAO,IAAI,sBAAsB;gBACnC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;SAC7G;aAAM;YACL,GAAG,CAAC,OAAO,IAAI,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;SACpE;QACD,MAAM,GAAG,CAAC;KACX;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAxBD,8BAwBC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../utils.ts"],"names":[],"mappings":";;;AAEA,MAAM,eAAe,GAAG;IACtB,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK,EAAE,SAAS;CACvB,CAAC;AACF,mCAAmC;AACnC,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAEhD,SAAS,cAAc,CAAC,CAAS;IAC/B,OAAO,eAAe,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;AACvD,CAAC;AAED,SAAgB,SAAS,CAAC,IAAY,EAAE,eAAiC;IACvE,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE;QACzC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;KAC9B;SAAM,IAAI,eAAe,EAAE;QAC1B,iDAAiD;QACjD,wDAAwD;QACxD,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;KAClC;IACD,IAAI;QACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACzB;IAAC,OAAO,GAAQ,EAAE;QACjB,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,EAAE;YAC9B,GAAG,CAAC,IAAI,GAAG,yBAAyB,CAAC;SACtC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE;YACtB,+BAA+B;YAC/B,GAAG,CAAC,OAAO,IAAI,sBAAsB;gBACnC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;SAC7G;aAAM;YACL,GAAG,CAAC,OAAO,IAAI,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;SACpE;QACD,MAAM,GAAG,CAAC;KACX;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAxBD,8BAwBC;AAED,SAAgB,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;QACjC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAJD,sBAIC"}
@@ -0,0 +1,16 @@
1
+ /// <reference types="node" />
2
+ import { LookupFunction } from 'net';
3
+ import { Agent } from 'undici';
4
+ import { DispatchHandlers } from 'undici/types/dispatcher';
5
+ import { BuildOptions } from 'undici/types/connector';
6
+ export declare type CheckAddressFunction = (ip: string, family: number | string) => boolean;
7
+ export declare type HttpAgentOptions = {
8
+ lookup?: LookupFunction;
9
+ checkAddress?: CheckAddressFunction;
10
+ connect?: BuildOptions;
11
+ };
12
+ export declare class HttpAgent extends Agent {
13
+ #private;
14
+ constructor(options: HttpAgentOptions);
15
+ dispatch(options: Agent.DispatchOptions, handler: DispatchHandlers): boolean;
16
+ }
@@ -0,0 +1,58 @@
1
+ var _HttpAgent_checkAddress;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import dns from 'dns';
4
+ import { isIP } from 'net';
5
+ import { Agent, } from 'undici';
6
+ class IllegalAddressError extends Error {
7
+ constructor(hostname, ip, family) {
8
+ const message = 'illegal address';
9
+ super(message);
10
+ this.name = this.constructor.name;
11
+ this.hostname = hostname;
12
+ this.ip = ip;
13
+ this.family = family;
14
+ Error.captureStackTrace(this, this.constructor);
15
+ }
16
+ }
17
+ export class HttpAgent extends Agent {
18
+ constructor(options) {
19
+ var _a;
20
+ /* eslint node/prefer-promises/dns: off*/
21
+ const _lookup = (_a = options.lookup) !== null && _a !== void 0 ? _a : dns.lookup;
22
+ const lookup = (hostname, dnsOptions, callback) => {
23
+ _lookup(hostname, dnsOptions, (err, address, family) => {
24
+ if (err)
25
+ return callback(err, address, family);
26
+ if (options.checkAddress && !options.checkAddress(address, family)) {
27
+ err = new IllegalAddressError(hostname, address, family);
28
+ }
29
+ callback(err, address, family);
30
+ });
31
+ };
32
+ super({
33
+ connect: { ...options.connect, lookup },
34
+ });
35
+ _HttpAgent_checkAddress.set(this, void 0);
36
+ __classPrivateFieldSet(this, _HttpAgent_checkAddress, options.checkAddress, "f");
37
+ }
38
+ dispatch(options, handler) {
39
+ if (__classPrivateFieldGet(this, _HttpAgent_checkAddress, "f") && options.origin) {
40
+ const originUrl = typeof options.origin === 'string' ? new URL(options.origin) : options.origin;
41
+ let hostname = originUrl.hostname;
42
+ // [2001:db8:2de::e13] => 2001:db8:2de::e13
43
+ if (hostname.startsWith('[') && hostname.endsWith(']')) {
44
+ hostname = hostname.substring(1, hostname.length - 1);
45
+ }
46
+ const family = isIP(hostname);
47
+ if (family === 4 || family === 6) {
48
+ // if request hostname is ip, custom lookup won't excute
49
+ if (!__classPrivateFieldGet(this, _HttpAgent_checkAddress, "f").call(this, hostname, family)) {
50
+ throw new IllegalAddressError(hostname, hostname, family);
51
+ }
52
+ }
53
+ }
54
+ return super.dispatch(options, handler);
55
+ }
56
+ }
57
+ _HttpAgent_checkAddress = new WeakMap();
58
+ //# sourceMappingURL=HttpAgent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpAgent.js","sourceRoot":"","sources":["../HttpAgent.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,39 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
2
4
  import { EventEmitter } from 'events';
5
+ import { LookupFunction } from 'net';
6
+ import { CheckAddressFunction } from './HttpAgent';
3
7
  import { RequestURL, RequestOptions } from './Request';
4
8
  import { HttpClientResponse } from './Response';
5
9
  export declare type ClientOptions = {
6
10
  defaultArgs?: RequestOptions;
11
+ /**
12
+ * Custom DNS lookup function, default is `dns.lookup`.
13
+ */
14
+ lookup?: LookupFunction;
15
+ /**
16
+ * check request address to protect from SSRF and similar attacks.
17
+ * It receive two arguments(ip and family) and should return true or false to identified the address is legal or not.
18
+ * It rely on lookup and have the same version requirement.
19
+ */
20
+ checkAddress?: CheckAddressFunction;
21
+ connect?: {
22
+ key?: string | Buffer;
23
+ /**
24
+ * A string or Buffer containing the certificate key of the client in PEM format.
25
+ * Notes: This is necessary only if using the client certificate authentication
26
+ */
27
+ cert?: string | Buffer;
28
+ /**
29
+ * If true, the server certificate is verified against the list of supplied CAs.
30
+ * An 'error' event is emitted if verification fails.Default: true.
31
+ */
32
+ rejectUnauthorized?: boolean;
33
+ };
7
34
  };
8
35
  export declare class HttpClient extends EventEmitter {
9
- defaultArgs?: RequestOptions;
36
+ #private;
10
37
  constructor(clientOptions?: ClientOptions);
11
38
  request(url: RequestURL, options?: RequestOptions): Promise<HttpClientResponse>;
12
39
  }