Description
What's the problem this feature will solve?
http-server now has the capability to configure proxy functions; however, this feature is quite basic and can only forward all unhandled HTTP requests to a single address. Often, we want to be able to configure multiple proxies or have more flexible and complex proxy settings. For example, requests to /api/xxx should be proxied to http://192.168.6.8:8080, and requests to /api2/xxx should be proxied to http://192.168.6.8:8082.
Describe the solution you'd like
Configuring multiple and complex proxies with http-server using command-line options can be challenging. We can conveniently achieve this functionality by using a configuration file (such as http-server.json or http-server.config.js).
For example, an http-server.json configuration file might look like this:
{
"port": 8092,
"proxy": {
"/api/": {
"target": "http://192.168.6.8:8080",
"changeOrigin": true
},
"/api2/": {
"target": "http://192.168.6.8:8082",
"changeOrigin": false
}
}
}
When http-server runs, it checks for the presence of this default-named configuration file in the current directory. If it exists, http-server reads the configuration and performs the corresponding functions based on the settings.