Skip to content

Instantly share code, notes, and snippets.

@pintux
Last active February 12, 2016 00:48
Show Gist options
  • Save pintux/528d3e527cea249f49eb to your computer and use it in GitHub Desktop.
Save pintux/528d3e527cea249f49eb to your computer and use it in GitHub Desktop.
Simple node.js (v5.6.x) server to inspect HTTP requests.
'use strict'
const http = require('http');
console.log(`Server listening at port ${process.env.PORT || 8080}`);
http.createServer((request, response) => {
let headers = request.headers;
let method = request.method;
let url = request.url;
let body = [];
request.on('error', (err) => {
console.error(err);
}).on('data', (chunk) => {
body.push(chunk);
}).on('end', () => {
body = Buffer.concat(body).toString();
console.log(`\nREQUEST: ${method} ${url}\n`);
let prettyHeaders = '';
for(let h in headers){
prettyHeaders += h + ': ' + headers[h] + '\n';
}
console.log(`HEADERS\n\n${prettyHeaders}\n\n`);
console.log(`BODY\n\n${body.toString()}\n`);
console.log('\n======================\n');
response.statusCode = 200;
response.end();
});
}).listen(process.env.PORT || 8080); // DEFAULT: listening on port 8080.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment