Skip to content

Bypass your HTTP/HTTPS backend service configrablly in an easy way.

Notifications You must be signed in to change notification settings

rokid/node-http-bypass

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-http-bypass

Bypass your HTTP/HTTPS backend service configrablly in an easy way.

Usecase

We use this tool to develop our new forum project without any changes on server-side, which is based on the discourse API, the CORS-required website.

CORS sometimes take you in a trap, and block your development flow, Yep? With node-http-bypass, you could customize anything that you wanna without changes on your server-side, just start writing code and put the CORS configurations after the demo is ready for production!

Your usecase? create Pull Request to submit :p

Usage

You need to define the following JSON under your working directory:

{
  "listen": 8888,
  "targetURL": "https://github.com",
  "outgoing": {
    "access-control-allow-headers": "+Content-Type"
  }
}

This JSON should be named as .bypassconfig and under your CWD. Run bypass or http-bypass in your shell, the program reads this config file, and do the followings:

  • start the proxy server on listen as its port.
  • when requesting to proxy server, it do request based on the targetURL.
  • when the target responds to proxy server finally, it rewrites the headers by the field outgoing.
    • for the +s rule, it inserts the given string to the header.
    • for the s(string) rule, it replaces the whole value of the specific header.

Wanna an API to integrate?

Yes, it also provides programming interface for doing what you want. Just like the following:

const ByPassServer = require('http-bypass').ByPassServer
const proxy = new ByPassServer({
  listen: 8000,
  targetURL: 'https://github.com',
  outgoing: {},
})
proxy.start()

The config object structure follows the .bypassconfig, so just see Usage for details.

Installation

$ npm i node-http-bypass -g

License

MIT @ Rokid, Inc.

About

Bypass your HTTP/HTTPS backend service configrablly in an easy way.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published