Registry / http-networking / http-forward

http-forward

JSON →
library0.1.3jsnpmunverified

http-forward is a minimalist Node.js library designed to proxy incoming HTTP requests to a specified target URL. It functions by attaching a `target` property to the `req.forward` object, allowing for basic request redirection within a Node.js `http.createServer` instance. This package is extremely lightweight and relies solely on Node.js's built-in `http` module. However, with its last publish date over ten years ago (version 0.1.3) and no apparent ongoing development, it is considered abandoned. It does not support modern JavaScript module syntax (ESM), HTTP/2, or contemporary security practices, and has no release cadence. Users are strongly advised to consider actively maintained and more feature-rich alternatives such as `http-proxy` or `http-proxy-middleware` for any new or existing projects requiring HTTP proxying in Node.js.

npm install http-forward
INSTALL
IMPORT
SIG · HTTP-FORWARD
H
http-forward
http-networkingjavascriptv0.1.3
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

forward
const forward = require('http-forward')
import forward from 'http-forward'
This package is CommonJS-only and does not support ES module `import` syntax. It was published long before ESM was standardized in Node.js.

This example sets up a simple proxy server on port 3000 that forwards all incoming HTTP requests to a target server running on port 9000.

const http = require('http'); const forward = require('http-forward'); // A basic target server to forward requests to const targetServer = http.createServer((req, res) => { console.log(`Target server received: ${req.method} ${req.url}`); res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello from the target server!'); }); targetServer.listen(9000, () => { console.log('Target server listening on port 9000'); }); // The proxy server that uses http-forward const proxyServer = http.createServer((req, res) => { console.log(`Proxy server received: ${req.method} ${req.url}`); // Define the target for http-forward req.forward = { target: 'http://localhost:9000' }; forward(req, res, (err) => { if (err) { console.error('Proxy error:', err.message); res.writeHead(500, { 'Content-Type': 'text/plain' }); res.end('Proxy Error'); } }); }); proxyServer.listen(3000, () => { console.log('Proxy server listening on port 3000. Try curl http://localhost:3000'); });
Debug
Known issues
breakingThe `http-forward` package is abandoned and has not been updated in over ten years. It should not be used in production environments due to potential unpatched security vulnerabilities and incompatibility with modern Node.js versions and features.
fix
Migrate to a maintained HTTP proxy library such as `node-http-proxy` or `http-proxy-middleware`.
affects: <=0.1.3
gotchaThis package is CommonJS-only and relies on `require()` statements. It does not support ES Modules (`import`/`export`) or modern JavaScript bundling techniques, which can lead to compatibility issues in contemporary Node.js projects.
fix
Ensure your project is configured for CommonJS, or migrate to a modern proxy library that supports ESM. Consider using a CommonJS-to-ESM wrapper if absolutely necessary, but this is not recommended for an abandoned package.
affects: >=0.1.0
gotchaDue to its age, `http-forward` lacks support for modern web protocols like HTTP/2 and advanced proxy features such as WebSocket forwarding, SSL/TLS termination at the proxy, or sophisticated routing rules.
fix
For projects requiring HTTP/2, WebSocket proxying, or advanced features, use modern, actively maintained proxy libraries or dedicated proxy servers (e.g., Nginx, HAProxy, Caddy, Traefik, or Node.js alternatives like `node-http-proxy-3`).
affects: >=0.1.0
Errors
Common errors & fixes
ERR_REQUIRE_ESM
Attempting to import `http-forward` using ES module syntax (`import forward from 'http-forward';`) in a Node.js environment configured for ESM.
fix
This package is CommonJS-only. You must use `const forward = require('http-forward');` to import it. Alternatively, configure your project to run as CommonJS or migrate to a modern proxy library that supports ESM.
Error: read ECONNRESET
This error can occur with older Node.js modules when handling connections, especially under load or with modern client/server interactions, indicating a connection abruptly closed. It's often a symptom of incompatibility or unhandled edge cases in an unmaintained library.
fix
While specific fixes vary, common workarounds involve ensuring Node.js environment compatibility (which is hard for an ancient library) or, more reliably, migrating to a robust, actively maintained proxy solution that handles connection management more resiliently.
Upgrade
Version history
0.1.3latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
6 hits · last 30 days
node
6
Resources
http-forward — npm install http-forward · libregistry