@refactorjs/http-proxy
Advanced tools
Comparing version 0.1.2 to 0.1.3
import * as url from 'url'; | ||
import * as net from 'net'; | ||
import { Socket } from 'net'; | ||
import * as http from 'http'; | ||
import http__default from 'http'; | ||
import http__default, { IncomingMessage, ServerResponse } from 'http'; | ||
import * as https from 'https'; | ||
@@ -12,20 +13,4 @@ import https__default from 'https'; | ||
declare class ProxyServer extends EventEmitter { | ||
#private; | ||
options: Server.ServerOptions; | ||
$server: http__default.Server | https__default.Server | undefined; | ||
/** | ||
* Used for proxying regular HTTP(S) requests | ||
* @param req - Client request. | ||
* @param res - Client response. | ||
* @param options - Additional options. | ||
*/ | ||
web: WebPassthrough; | ||
/** | ||
* Used for proxying regular HTTP(S) requests | ||
* @param req - Client request. | ||
* @param socket - Client socket. | ||
* @param head - Client head. | ||
* @param options - Additionnal options. | ||
*/ | ||
ws: WsPassthrough; | ||
server?: http__default.Server | https__default.Server; | ||
webPasses: WebPassthrough[]; | ||
@@ -51,2 +36,16 @@ wsPasses: WsPassthrough[]; | ||
after(type: 'web' | 'ws', passName: string, callback: WebPassthrough & WsPassthrough): void; | ||
/** | ||
* Used for proxying regular HTTP(S) requests | ||
* @param req - Client request. | ||
* @param res - Client response. | ||
* @param args - Additional arguments for the web proxy. | ||
*/ | ||
web(req: IncomingMessage, res: ServerResponse, ...args: any[]): boolean | undefined; | ||
/** | ||
* Used for proxying regular HTTP(S) requests | ||
* @param req - Client request. | ||
* @param socket - Client socket. | ||
* @param args - Additional arguments for the websocket proxy | ||
*/ | ||
ws(req: IncomingMessage, socket: Socket, ...args: any[]): boolean | undefined; | ||
} | ||
@@ -92,3 +91,3 @@ declare const createProxyServer: (options?: Server.ServerOptions) => ProxyServer; | ||
(req: http.IncomingMessage, res: http.ServerResponse, options: Server.ServerOptions): boolean | void; | ||
(req: http.IncomingMessage, res: http.ServerResponse, options: Server.ServerOptions, server?: ProxyServer, callback?: (err?: any, req?: http.IncomingMessage, res?: http.ServerResponse, url?: Server.ServerOptions['target']) => void): boolean | void; | ||
(req: http.IncomingMessage, res: http.ServerResponse, options: Server.ServerOptions, server?: ProxyServer, callback?: Server.ErrorCallback): boolean | void; | ||
} | ||
@@ -98,3 +97,3 @@ interface WsPassthrough { | ||
(req: http.IncomingMessage, socket: net.Socket, head?: buffer.Buffer): boolean | void; | ||
(req: http.IncomingMessage, socket: net.Socket, options: Server.ServerOptions, head?: buffer.Buffer, server?: ProxyServer, callback?: (err: any, req: http.IncomingMessage, socket: net.Socket) => void): boolean | void; | ||
(req: http.IncomingMessage, socket: net.Socket, options: Server.ServerOptions, head?: buffer.Buffer, server?: ProxyServer, callback?: Server.ErrorCallback): boolean | void; | ||
} | ||
@@ -153,4 +152,2 @@ declare namespace Server { | ||
proxyTimeout?: number; | ||
/** */ | ||
router?: Record<string, unknown>; | ||
/** Timeout (in milliseconds) for incoming requests */ | ||
@@ -171,13 +168,5 @@ timeout?: number; | ||
} | ||
type StartCallback<TIncomingMessage = http.IncomingMessage, TServerResponse = http.ServerResponse> = (req: TIncomingMessage, res: TServerResponse, target: ProxyTargetUrl) => void; | ||
type ProxyReqCallback<TClientRequest = http.ClientRequest, TIncomingMessage = http.IncomingMessage, TServerResponse = http.ServerResponse> = (proxyReq: TClientRequest, req: TIncomingMessage, res: TServerResponse, options: ServerOptions) => void; | ||
type ProxyResCallback<TIncomingMessage = http.IncomingMessage, TServerResponse = http.ServerResponse> = (proxyRes: TIncomingMessage, req: TIncomingMessage, res: TServerResponse) => void; | ||
type ProxyReqWsCallback<TClientRequest = http.ClientRequest, TIncomingMessage = http.IncomingMessage> = (proxyReq: TClientRequest, req: TIncomingMessage, socket: net.Socket, options: ServerOptions, head: buffer.Buffer, asyncContext: (cb: Promise<any>) => void) => void; | ||
type EconnresetCallback<TError = Error, TIncomingMessage = http.IncomingMessage, TServerResponse = http.ServerResponse> = (err: TError, req: TIncomingMessage, res: TServerResponse, target: ProxyTargetUrl) => void; | ||
type EndCallback<TIncomingMessage = http.IncomingMessage, TServerResponse = http.ServerResponse> = (req: TIncomingMessage, res: TServerResponse, proxyRes: TIncomingMessage) => void; | ||
type OpenCallback = (proxySocket: net.Socket) => void; | ||
type CloseCallback<TIncomingMessage = http.IncomingMessage> = (proxyRes: TIncomingMessage, proxySocket: net.Socket, proxyHead: any) => void; | ||
type ErrorCallback<TError = Error, TIncomingMessage = http.IncomingMessage, TServerResponse = http.ServerResponse> = (err: TError, req: TIncomingMessage, res: TServerResponse | net.Socket, target?: ProxyTargetUrl) => void; | ||
type ErrorCallback<TError = Error, TIncomingMessage = http.IncomingMessage, TServerResponse = http.ServerResponse> = (err: TError, req: TIncomingMessage, res: TServerResponse | net.Socket, target?: Server.ServerOptions['target']) => void; | ||
} | ||
export { OutgoingOptions, ProxyServer, ProxyTargetDetailed, Server, WebPassthrough, WsPassthrough, createProxy, createProxyServer, createServer }; |
{ | ||
"name": "@refactorjs/http-proxy", | ||
"version": "0.1.2", | ||
"version": "0.1.3", | ||
"description": "http-proxy alternative", | ||
@@ -34,3 +34,3 @@ "repository": { | ||
"@types/follow-redirects": "^1.14.1", | ||
"@types/node": "^18.7.18", | ||
"@types/node": "^18.8.3", | ||
"@types/requires-port": "^1.0.0", | ||
@@ -40,3 +40,3 @@ "async": "^3.2.4", | ||
"nyc": "^15.1.0", | ||
"semver": "^7.3.7", | ||
"semver": "^7.3.8", | ||
"socket.io": "^4.5.2", | ||
@@ -47,4 +47,4 @@ "socket.io-client": "^4.5.2", | ||
"unbuild": "^0.8.11", | ||
"vitest": "^0.23.2", | ||
"ws": "^8.8.1" | ||
"vitest": "^0.24.0", | ||
"ws": "^8.9.0" | ||
}, | ||
@@ -51,0 +51,0 @@ "engines": { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
59968
1319