steve-proxy-server v1.0.35
steve.proxy.server
Server content from as localhost web server with proxy settings.
to run
run from the same wsl distro which contains web pages being served.
run using node
node ./src/index.js
configuration web page
http://localhost:9000/sps-config/index.html
run in debug mode
wsl-restart lae0901 cd /clients/lae0901/xampp-php/node/steve-proxy-server code . F5 to run in debug mode. Select "run proxy-server"
deploy new version
publish new version of package
- in package.json, increment the version number.
- npm publish
- see publish topic in notes web npm.txt document for more info.
npm commands to display installed package
- npm view steve-proxy-server
- npm list -g steve-proxy-server
update install on systems where the package is used
- sudo npm install -g steve-proxy-server
key features
The ./src/index.js file contains #!/usr/bin/env node
on the first line. This enables node to run the index.js file from the terminal command line.
The bin
property in package.json
enables the globally installed package to be run from the terminal command line by specifying the package name.
modifications
switch http server to async and await capable.
2023-01-09
Start using decodeURI
correctly. Use to replace %20 in URI with a space. Needed when staticly serving files.
Add proxyJS
setting. When this flag is on requests for .js files are proxied up to the internet server and not served from local folder.
todo
2022-10-28 check for existance of php file before use axios.post
decode url GET /coder/img/sql%20favicon.ico
highlighted code
gather request body in function that returns a promise
// ------------------------------- gatherRequestBody -------------------------------
function gatherRequestBody( req )
{
const promise = new Promise((resolve, reject) =>
{
let body_data = '';
req.on('data', chunk =>
{
body_data += chunk;
});
req.on('end', () =>
{
resolve( body_data );
});
});
return promise;
}
async version of http.createServer
http.createServer( async function (req, res)
{
console.log(`${req.method} ${req.url}`);
let body_data = await gatherRequestBody(req) ;
}).listen( port, ipAddr) ;
1 year ago
2 years ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago