@theia/request 1.71.0-next.6 → 1.71.0-next.64

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.
@@ -24,6 +24,15 @@ export interface RequestOptions {
24
24
  headers?: Headers;
25
25
  timeout?: number;
26
26
  data?: string;
27
+ /**
28
+ * Controls automatic redirect following.
29
+ *
30
+ * Set to `0` to disable automatic redirect following (`redirect: 'manual'`).
31
+ * Any other value or `undefined` follows redirects automatically.
32
+ *
33
+ * Note: Custom redirect count limits are not supported; the underlying `fetch` API
34
+ * either follows all redirects or none.
35
+ */
27
36
  followRedirects?: number;
28
37
  proxyAuthorization?: string;
29
38
  }
@@ -71,6 +80,8 @@ export declare const BackendRequestService: unique symbol;
71
80
  export declare const REQUEST_SERVICE_PATH = "/services/request-service";
72
81
  export interface CancellationToken {
73
82
  readonly isCancellationRequested: boolean;
74
- readonly onCancellationRequested: (listener: () => void) => void;
83
+ readonly onCancellationRequested: (listener: () => void) => void | {
84
+ dispose(): void;
85
+ };
75
86
  }
76
87
  //# sourceMappingURL=common-request-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-request-service.d.ts","sourceRoot":"","sources":["../src/common-request-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,MAAM,WAAW,OAAO;IACpB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE;QACD,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF;;;;OAIG;IACH,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;CAC/B;AAED,yBAAiB,cAAc,CAAC;IAC5B,SAAgB,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAE1D;IAMD,SAAgB,MAAM,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CActD;IAED,SAAgB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,CAAC,CAQzD;IAED;;;;OAIG;IACH,SAAgB,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAKhE;IAED;;;OAGG;IACH,SAAgB,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAMlE;CACJ;AAED,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AACD,MAAM,WAAW,cAAc;IAC3B,SAAS,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACrF,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CACzD;AAED,eAAO,MAAM,cAAc,eAA2B,CAAC;AACvD,eAAO,MAAM,qBAAqB,eAAkC,CAAC;AACrE,eAAO,MAAM,oBAAoB,8BAA8B,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,uBAAuB,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;CACpE"}
1
+ {"version":3,"file":"common-request-service.d.ts","sourceRoot":"","sources":["../src/common-request-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,MAAM,WAAW,OAAO;IACpB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE;QACD,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF;;;;OAIG;IACH,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;CAC/B;AAED,yBAAiB,cAAc,CAAC;IAC5B,SAAgB,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAE1D;IAMD,SAAgB,MAAM,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CActD;IAED,SAAgB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,CAAC,CAQzD;IAED;;;;OAIG;IACH,SAAgB,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAKhE;IAED;;;OAGG;IACH,SAAgB,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAMlE;CACJ;AAED,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AACD,MAAM,WAAW,cAAc;IAC3B,SAAS,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACrF,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CACzD;AAED,eAAO,MAAM,cAAc,eAA2B,CAAC;AACvD,eAAO,MAAM,qBAAqB,eAAkC,CAAC;AACrE,eAAO,MAAM,oBAAoB,8BAA8B,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,uBAAuB,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,IAAI,IAAI,CAAA;KAAE,CAAC;CAC1F"}
@@ -1 +1 @@
1
- {"version":3,"file":"common-request-service.js","sourceRoot":"","sources":["../src/common-request-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-request-service.js","sourceRoot":"","sources":["../src/common-request-service.ts"],"names":[],"mappings":"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"}
@@ -13,23 +13,16 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import * as http from 'http';
17
- import * as https from 'https';
18
- import { ProxyAgent } from './proxy';
16
+ import type { Dispatcher } from 'undici';
19
17
  import { RequestConfiguration, RequestContext, RequestOptions, RequestService, CancellationToken } from './common-request-service';
20
- export interface RawRequestFunction {
21
- (options: http.RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
22
- }
23
18
  export interface NodeRequestOptions extends RequestOptions {
24
- agent?: ProxyAgent | http.Agent | https.Agent | boolean;
25
19
  strictSSL?: boolean;
26
- getRawRequest?(options: NodeRequestOptions): RawRequestFunction;
20
+ dispatcher?: Dispatcher;
27
21
  }
28
22
  export declare class NodeRequestService implements RequestService {
29
23
  protected proxyUrl?: string;
30
24
  protected strictSSL?: boolean;
31
25
  protected authorization?: string;
32
- protected getNodeRequest(options: RequestOptions): RawRequestFunction;
33
26
  protected getProxyUrl(url: string): Promise<string | undefined>;
34
27
  configure(config: RequestConfiguration): Promise<void>;
35
28
  protected processOptions(options: NodeRequestOptions): Promise<NodeRequestOptions>;
@@ -1 +1 @@
1
- {"version":3,"file":"node-request-service.d.ts","sourceRoot":"","sources":["../src/node-request-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAiB,UAAU,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAW,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG5I,MAAM,WAAW,kBAAkB;IAC/B,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,KAAK,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC;CACtG;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACtD,KAAK,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAAC;CACnE;AAED,qBAAa,kBAAmB,YAAW,cAAc;IACrD,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEjC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,kBAAkB;cAMrD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI/D,SAAS,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;cAY5C,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAyBxF,OAAO,CAAC,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;IAwFlF,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAG/D"}
1
+ {"version":3,"file":"node-request-service.d.ts","sourceRoot":"","sources":["../src/node-request-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEzC,OAAO,EAAW,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE5I,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED,qBAAa,kBAAmB,YAAW,cAAc;IACrD,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;cAEjB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI/D,SAAS,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;cAY5C,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAqBlF,OAAO,CAAC,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;IAoExF,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAG/D"}
@@ -16,17 +16,8 @@
16
16
  ********************************************************************************/
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.NodeRequestService = void 0;
19
- const http = require("http");
20
- const https = require("https");
21
19
  const proxy_1 = require("./proxy");
22
- const zlib_1 = require("zlib");
23
- ;
24
20
  class NodeRequestService {
25
- getNodeRequest(options) {
26
- const endpoint = new URL(options.url);
27
- const module = endpoint.protocol === 'https:' ? https : http;
28
- return module.request;
29
- }
30
21
  async getProxyUrl(url) {
31
22
  return this.proxyUrl;
32
23
  }
@@ -44,11 +35,12 @@ class NodeRequestService {
44
35
  async processOptions(options) {
45
36
  const { strictSSL } = this;
46
37
  options.strictSSL = options.strictSSL ?? strictSSL;
47
- const agent = options.agent ? options.agent : (0, proxy_1.getProxyAgent)(options.url || '', process.env, {
48
- proxyUrl: await this.getProxyUrl(options.url),
49
- strictSSL: options.strictSSL
50
- });
51
- options.agent = agent;
38
+ if (!options.dispatcher) {
39
+ options.dispatcher = (0, proxy_1.getProxyAgent)(options.url || '', process.env, {
40
+ proxyUrl: await this.getProxyUrl(options.url),
41
+ strictSSL: options.strictSSL
42
+ });
43
+ }
52
44
  const authorization = options.proxyAuthorization || this.authorization;
53
45
  if (authorization) {
54
46
  options.headers = {
@@ -56,84 +48,64 @@ class NodeRequestService {
56
48
  'Proxy-Authorization': authorization
57
49
  };
58
50
  }
59
- options.headers = {
60
- 'Accept-Encoding': 'gzip',
61
- ...(options.headers || {}),
62
- };
63
51
  return options;
64
52
  }
65
- request(options, token) {
66
- return new Promise(async (resolve, reject) => {
67
- options = await this.processOptions(options);
68
- const endpoint = new URL(options.url);
69
- const rawRequest = options.getRawRequest
70
- ? options.getRawRequest(options)
71
- : this.getNodeRequest(options);
72
- const opts = {
73
- hostname: endpoint.hostname,
74
- port: endpoint.port ? parseInt(endpoint.port) : (endpoint.protocol === 'https:' ? 443 : 80),
75
- protocol: endpoint.protocol,
76
- path: endpoint.pathname + endpoint.search,
77
- method: options.type || 'GET',
78
- headers: options.headers,
79
- agent: options.agent,
80
- rejectUnauthorized: !!options.strictSSL
81
- };
82
- if (options.user && options.password) {
83
- opts.auth = options.user + ':' + options.password;
84
- }
85
- const timeoutHandler = () => {
86
- reject('timeout');
87
- };
88
- const req = rawRequest(opts, async (res) => {
89
- const followRedirects = options.followRedirects ?? 3;
90
- if (res.statusCode && res.statusCode >= 300 && res.statusCode < 400 && followRedirects > 0 && res.headers.location) {
91
- req.off('timeout', timeoutHandler);
92
- this.request({
93
- ...options,
94
- url: res.headers.location,
95
- followRedirects: followRedirects - 1
96
- }, token).then(resolve, reject);
97
- }
98
- else {
99
- const chunks = [];
100
- const stream = res.headers['content-encoding'] === 'gzip' ? res.pipe((0, zlib_1.createGunzip)()) : res;
101
- stream.on('data', chunk => {
102
- chunks.push(chunk);
103
- });
104
- stream.on('end', () => {
105
- req.off('timeout', timeoutHandler);
106
- const buffer = Buffer.concat(chunks);
107
- resolve({
108
- url: options.url,
109
- res: {
110
- headers: res.headers,
111
- statusCode: res.statusCode
112
- },
113
- buffer
114
- });
115
- });
116
- stream.on('error', err => {
117
- reject(err);
118
- });
119
- }
53
+ async request(options, token) {
54
+ options = await this.processOptions(options);
55
+ const headers = { ...(options.headers || {}) };
56
+ if (options.user && options.password) {
57
+ headers['Authorization'] = 'Basic ' + Buffer.from(options.user + ':' + options.password).toString('base64');
58
+ }
59
+ const signals = [];
60
+ if (options.timeout) {
61
+ signals.push(AbortSignal.timeout(options.timeout));
62
+ }
63
+ let tokenAbortController;
64
+ let cancellationListener;
65
+ if (token) {
66
+ tokenAbortController = new AbortController();
67
+ signals.push(tokenAbortController.signal);
68
+ cancellationListener = token.onCancellationRequested(() => {
69
+ tokenAbortController.abort();
120
70
  });
121
- req.on('error', err => {
122
- reject(err);
71
+ }
72
+ const signal = signals.length > 0
73
+ ? (signals.length === 1 ? signals[0] : AbortSignal.any(signals))
74
+ : undefined;
75
+ const fetchOptions = {
76
+ method: options.type || 'GET',
77
+ headers,
78
+ redirect: options.followRedirects === 0 ? 'manual' : 'follow',
79
+ signal,
80
+ };
81
+ if (options.dispatcher) {
82
+ fetchOptions.dispatcher = options.dispatcher;
83
+ }
84
+ if (options.data) {
85
+ fetchOptions.body = options.data;
86
+ }
87
+ try {
88
+ const response = await fetch(options.url, fetchOptions);
89
+ const arrayBuffer = await response.arrayBuffer();
90
+ const buffer = Buffer.from(arrayBuffer);
91
+ const responseHeaders = {};
92
+ response.headers.forEach((value, key) => {
93
+ responseHeaders[key] = value;
123
94
  });
124
- req.on('timeout', timeoutHandler);
125
- if (options.timeout) {
126
- req.setTimeout(options.timeout);
127
- }
128
- if (options.data) {
129
- req.write(options.data);
95
+ return {
96
+ url: options.url,
97
+ res: {
98
+ headers: responseHeaders,
99
+ statusCode: response.status
100
+ },
101
+ buffer
102
+ };
103
+ }
104
+ finally {
105
+ if (cancellationListener) {
106
+ cancellationListener.dispose();
130
107
  }
131
- req.end();
132
- token?.onCancellationRequested(() => {
133
- req.destroy();
134
- reject();
135
- });
136
- });
108
+ }
137
109
  }
138
110
  async resolveProxy(url) {
139
111
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"node-request-service.js","sourceRoot":"","sources":["../src/node-request-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-request-service.js","sourceRoot":"","sources":["../src/node-request-service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (C) 2022 TypeFox and others.
2
+ * Copyright (C) 2026 EclipseSource GmbH.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -13,16 +13,5 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
-
17
- /* note: this bogus test file is required so that
18
- we are able to run mocha unit tests on this
19
- package, without having any actual unit tests in it.
20
- This way a coverage report will be generated,
21
- showing 0% coverage, instead of no report.
22
- This file can be removed once we have real unit
23
- tests in place. */
24
-
25
- describe('request package', () => {
26
-
27
- it('should support code coverage statistics', () => true);
28
- });
16
+ export {};
17
+ //# sourceMappingURL=node-request-service.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-request-service.spec.d.ts","sourceRoot":"","sources":["../src/node-request-service.spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF"}
@@ -0,0 +1,233 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (C) 2026 EclipseSource GmbH.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const chai_1 = require("chai");
19
+ const http = require("http");
20
+ const node_request_service_1 = require("./node-request-service");
21
+ const common_request_service_1 = require("./common-request-service");
22
+ describe('NodeRequestService', () => {
23
+ let service;
24
+ let server;
25
+ let serverPort;
26
+ before(done => {
27
+ service = new node_request_service_1.NodeRequestService();
28
+ server = http.createServer((req, res) => {
29
+ if (req.url === '/json') {
30
+ res.writeHead(200, { 'Content-Type': 'application/json' });
31
+ res.end(JSON.stringify({ message: 'hello' }));
32
+ }
33
+ else if (req.url === '/text') {
34
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
35
+ res.end('hello world');
36
+ }
37
+ else if (req.url === '/echo-headers') {
38
+ res.writeHead(200, { 'Content-Type': 'application/json' });
39
+ res.end(JSON.stringify(req.headers));
40
+ }
41
+ else if (req.url === '/echo-method') {
42
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
43
+ res.end(req.method);
44
+ }
45
+ else if (req.url === '/echo-body') {
46
+ const chunks = [];
47
+ req.on('data', chunk => chunks.push(chunk));
48
+ req.on('end', () => {
49
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
50
+ res.end(Buffer.concat(chunks).toString());
51
+ });
52
+ }
53
+ else if (req.url === '/status/404') {
54
+ res.writeHead(404, { 'Content-Type': 'text/plain' });
55
+ res.end('not found');
56
+ }
57
+ else if (req.url === '/status/500') {
58
+ res.writeHead(500, { 'Content-Type': 'text/plain' });
59
+ res.end('server error');
60
+ }
61
+ else if (req.url === '/slow') {
62
+ setTimeout(() => {
63
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
64
+ res.end('slow response');
65
+ }, 5000);
66
+ }
67
+ else if (req.url === '/empty') {
68
+ res.writeHead(204);
69
+ res.end();
70
+ }
71
+ else if (req.url === '/redirect') {
72
+ res.writeHead(302, { 'Location': '/text' });
73
+ res.end();
74
+ }
75
+ else if (req.url === '/redirect-chain') {
76
+ res.writeHead(302, { 'Location': '/redirect' });
77
+ res.end();
78
+ }
79
+ else {
80
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
81
+ res.end('ok');
82
+ }
83
+ });
84
+ server.listen(0, () => {
85
+ const addr = server.address();
86
+ if (addr && typeof addr === 'object') {
87
+ serverPort = addr.port;
88
+ }
89
+ done();
90
+ });
91
+ });
92
+ after(done => {
93
+ server.close(done);
94
+ });
95
+ function url(path) {
96
+ return `http://localhost:${serverPort}${path}`;
97
+ }
98
+ it('should perform a basic GET request', async () => {
99
+ const result = await service.request({ url: url('/text') });
100
+ (0, chai_1.expect)(result.res.statusCode).to.equal(200);
101
+ (0, chai_1.expect)(common_request_service_1.RequestContext.asText(result)).to.equal('hello world');
102
+ });
103
+ it('should parse JSON responses', async () => {
104
+ const result = await service.request({ url: url('/json') });
105
+ (0, chai_1.expect)(result.res.statusCode).to.equal(200);
106
+ const json = common_request_service_1.RequestContext.asJson(result);
107
+ (0, chai_1.expect)(json.message).to.equal('hello');
108
+ });
109
+ it('should handle non-200 status codes', async () => {
110
+ const result = await service.request({ url: url('/status/404') });
111
+ (0, chai_1.expect)(result.res.statusCode).to.equal(404);
112
+ });
113
+ it('should handle 500 status codes', async () => {
114
+ const result = await service.request({ url: url('/status/500') });
115
+ (0, chai_1.expect)(result.res.statusCode).to.equal(500);
116
+ });
117
+ it('should handle 204 No Content', async () => {
118
+ const result = await service.request({ url: url('/empty') });
119
+ (0, chai_1.expect)(result.res.statusCode).to.equal(204);
120
+ (0, chai_1.expect)(common_request_service_1.RequestContext.asText(result)).to.equal('');
121
+ });
122
+ it('should send custom headers', async () => {
123
+ const result = await service.request({
124
+ url: url('/echo-headers'),
125
+ headers: { 'X-Custom': 'test-value' }
126
+ });
127
+ const headers = common_request_service_1.RequestContext.asJson(result);
128
+ (0, chai_1.expect)(headers['x-custom']).to.equal('test-value');
129
+ });
130
+ it('should use specified HTTP method', async () => {
131
+ const result = await service.request({
132
+ url: url('/echo-method'),
133
+ type: 'POST'
134
+ });
135
+ (0, chai_1.expect)(common_request_service_1.RequestContext.asText(result)).to.equal('POST');
136
+ });
137
+ it('should send request body', async () => {
138
+ const result = await service.request({
139
+ url: url('/echo-body'),
140
+ type: 'POST',
141
+ data: 'test body content'
142
+ });
143
+ (0, chai_1.expect)(common_request_service_1.RequestContext.asText(result)).to.equal('test body content');
144
+ });
145
+ it('should timeout when request takes too long', async () => {
146
+ try {
147
+ await service.request({
148
+ url: url('/slow'),
149
+ timeout: 100
150
+ });
151
+ chai_1.expect.fail('Should have thrown a timeout error');
152
+ }
153
+ catch (e) {
154
+ (0, chai_1.expect)(e).to.be.an.instanceOf(Error);
155
+ }
156
+ });
157
+ it('should abort on cancellation', async () => {
158
+ const listeners = [];
159
+ const token = {
160
+ isCancellationRequested: false,
161
+ onCancellationRequested: (listener) => {
162
+ listeners.push(listener);
163
+ }
164
+ };
165
+ const promise = service.request({
166
+ url: url('/slow'),
167
+ }, token);
168
+ // Trigger cancellation shortly after the request starts
169
+ setTimeout(() => {
170
+ listeners.forEach(l => l());
171
+ }, 50);
172
+ try {
173
+ await promise;
174
+ chai_1.expect.fail('Should have thrown an abort error');
175
+ }
176
+ catch (e) {
177
+ (0, chai_1.expect)(e).to.be.an.instanceOf(Error);
178
+ }
179
+ });
180
+ it('should include response headers', async () => {
181
+ const result = await service.request({ url: url('/json') });
182
+ (0, chai_1.expect)(result.res.headers['content-type']).to.equal('application/json');
183
+ });
184
+ it('should set the url on the result', async () => {
185
+ const requestUrl = url('/text');
186
+ const result = await service.request({ url: requestUrl });
187
+ (0, chai_1.expect)(result.url).to.equal(requestUrl);
188
+ });
189
+ describe('configure', () => {
190
+ it('should configure proxy settings', async () => {
191
+ const configuredService = new node_request_service_1.NodeRequestService();
192
+ await configuredService.configure({
193
+ proxyUrl: 'http://proxy.example.com:8080',
194
+ strictSSL: false,
195
+ proxyAuthorization: 'Basic dGVzdDp0ZXN0'
196
+ });
197
+ // Just verify configuration doesn't throw
198
+ });
199
+ it('should inject Proxy-Authorization header when authorization is configured', async () => {
200
+ const configuredService = new node_request_service_1.NodeRequestService();
201
+ await configuredService.configure({
202
+ proxyAuthorization: 'Basic dGVzdDp0ZXN0'
203
+ });
204
+ const result = await configuredService.request({ url: url('/echo-headers') });
205
+ const headers = common_request_service_1.RequestContext.asJson(result);
206
+ (0, chai_1.expect)(headers['proxy-authorization']).to.equal('Basic dGVzdDp0ZXN0');
207
+ });
208
+ });
209
+ describe('redirect handling', () => {
210
+ it('should follow redirects by default', async () => {
211
+ const result = await service.request({ url: url('/redirect') });
212
+ (0, chai_1.expect)(result.res.statusCode).to.equal(200);
213
+ (0, chai_1.expect)(common_request_service_1.RequestContext.asText(result)).to.equal('hello world');
214
+ });
215
+ it('should not follow redirects when followRedirects is 0', async () => {
216
+ const result = await service.request({ url: url('/redirect'), followRedirects: 0 });
217
+ (0, chai_1.expect)(result.res.statusCode).to.equal(302);
218
+ (0, chai_1.expect)(result.res.headers['location']).to.equal('/text');
219
+ });
220
+ it('should follow redirect chains by default', async () => {
221
+ const result = await service.request({ url: url('/redirect-chain') });
222
+ (0, chai_1.expect)(result.res.statusCode).to.equal(200);
223
+ (0, chai_1.expect)(common_request_service_1.RequestContext.asText(result)).to.equal('hello world');
224
+ });
225
+ });
226
+ describe('resolveProxy', () => {
227
+ it('should return undefined by default', async () => {
228
+ const proxy = await service.resolveProxy('https://example.com');
229
+ (0, chai_1.expect)(proxy).to.be.undefined;
230
+ });
231
+ });
232
+ });
233
+ //# sourceMappingURL=node-request-service.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-request-service.spec.js","sourceRoot":"","sources":["../src/node-request-service.spec.ts"],"names":[],"mappings":"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"}
package/lib/proxy.d.ts CHANGED
@@ -13,12 +13,10 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import * as httpAgent from 'http-proxy-agent';
17
- import * as httpsAgent from 'https-proxy-agent';
18
- export type ProxyAgent = httpAgent.HttpProxyAgent | httpsAgent.HttpsProxyAgent;
16
+ import { Dispatcher } from 'undici';
19
17
  export interface ProxySettings {
20
18
  proxyUrl?: string;
21
19
  strictSSL?: boolean;
22
20
  }
23
- export declare function getProxyAgent(rawRequestURL: string, env: typeof process.env, options?: ProxySettings): ProxyAgent | undefined;
21
+ export declare function getProxyAgent(rawRequestURL: string, env: typeof process.env, options?: ProxySettings): Dispatcher | undefined;
24
22
  //# sourceMappingURL=proxy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAGlF,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,cAAc,GAAG,UAAU,CAAC,eAAe,CAAC;AAY/E,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,OAAO,CAAC,GAAG,EAAE,OAAO,GAAE,aAAkB,GAAG,UAAU,GAAG,SAAS,CAuBjI"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAqB,UAAU,EAAE,MAAM,QAAQ,CAAC;AAYvD,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,OAAO,CAAC,GAAG,EAAE,OAAO,GAAE,aAAkB,GAAG,UAAU,GAAG,SAAS,CA0CjI"}