Skip to content

Commit a27e0e5

Browse files
committed
feat(XHR): support HTTP proxy
1 parent 7d9b2c7 commit a27e0e5

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

python/pythonmonkey/builtin_modules/XMLHttpRequest-internal.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ export declare function request(
3636
headers: Record<string, string>,
3737
body: string | Uint8Array,
3838
timeoutMs: number,
39+
proxy: string,
3940
// callbacks for request body progress
4041
processRequestBodyChunkLength: (bytesLength: number) => void,
4142
processRequestEndOfBody: () => void,

python/pythonmonkey/builtin_modules/XMLHttpRequest-internal.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ async def request(
3434
headers: dict,
3535
body: Union[str, ByteString],
3636
timeoutMs: float,
37+
proxy: str,
3738
# callbacks for request body progress
3839
processRequestBodyChunkLength: Callable[[int], None],
3940
processRequestEndOfBody: Callable[[], None],
@@ -90,6 +91,7 @@ async def write(self, writer) -> None:
9091
data=BytesPayloadWithProgress(body) if body else None,
9192
timeout=timeoutOptions,
9293
connector=keepAliveConnector,
94+
proxy=proxy if proxy else None,
9395
) as res:
9496
debug('xhr:aiohttp')('got', res.content_type, 'result')
9597

python/pythonmonkey/builtin_modules/XMLHttpRequest.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,11 @@ class XMLHttpRequest extends XMLHttpRequestEventTarget
240240
*/
241241
timeout = 0;
242242

243+
/**
244+
* URL of HTTP proxy to use
245+
*/
246+
proxy = '';
247+
243248
/**
244249
* A boolean value that indicates whether or not cross-site `Access-Control` requests should be made using credentials such as cookies, authorization headers or TLS client certificates.
245250
* Setting withCredentials has no effect on same-origin requests.
@@ -418,6 +423,7 @@ class XMLHttpRequest extends XMLHttpRequestEventTarget
418423
this.#requestHeaders,
419424
this.#requestBody ?? '',
420425
this.timeout,
426+
this.proxy,
421427
processRequestBodyChunkLength,
422428
processRequestEndOfBody,
423429
processResponse,

0 commit comments

Comments
 (0)