hostproxy

0.1.0 • Public • Published

Pure TCP HTTP Proxy

hostproxy is a pure TCP proxy for HTTP. It does not fully parse HTTP, it simply searches for the Host header and injects other headers in to the stream.

API

var hostproxy = require('hostproxy')
  , net = require('net')
  ;

hostproxy(function (host) {
  if (host === 'mysite.com') return net.connect(80, 'mysite.com')
  return net.connect(80, 'fallback.com')
}).listen(80)

If no host header is present then host will be null.

hostproxy(function (host) {
  if (!host) return // returning nothing will force disconnect the client
  return net.connect(80, host)
}).listen(80)

What about adding headers?

hostproxy(function (host, addHeader, address) {
  addHeader('x-forwarded-for', address.address)
  return net.connect(80, host || 'fallback.com')
}).listen(80)

The address param is the return value from socket.address().

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.1.0
    2
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 0.1.0
    2

Package Sidebar

Install

npm i hostproxy

Weekly Downloads

2

Version

0.1.0

License

Apache 2

Last publish

Collaborators

  • mikeal