http
http server
Section titled “http server”A basic example of HTTP server.
write following code in http_server.js file:
var http = require('http');
var httpPort = 80;
http.createServer(handler).listen(httpPort, start_callback);
function handler(req, res) {
var clientIP = req.connection.remoteAddress; var connectUsing = req.connection.encrypted ? 'SSL' : 'HTTP'; console.log('Request received: '+ connectUsing + ' ' + req.method + ' ' + req.url); console.log('Client IP: ' + clientIP);
res.writeHead(200, "OK", {'Content-Type': 'text/plain'}); res.write("OK"); res.end(); return;}
function start_callback(){ console.log('Start HTTP on port ' + httpPort)}then from your http_server.js location run this command:
node http_server.jsyou should see this result:
> Start HTTP on port 80now you need to test your server, you need to open your internet browser and navigate to this url:
http://127.0.0.1:80if your machine running Linux server you can test it like this:
curl 127.0.0.1:80you should see following result:
okin your console, that running the app, you will see this results:
> Request received: HTTP GET /> Client IP: ::ffff:127.0.0.1http client
Section titled “http client”a basic example for http client:
write the follwing code in http_client.js file:
var http = require('http');
var options = { hostname: '127.0.0.1', port: 80, path: '/', method: 'GET'};
var req = http.request(options, function(res) { console.log('STATUS: ' + res.statusCode); console.log('HEADERS: ' + JSON.stringify(res.headers)); res.setEncoding('utf8'); res.on('data', function (chunk) { console.log('Response: ' + chunk); }); res.on('end', function (chunk) { console.log('Response ENDED'); });});
req.on('error', function(e) { console.log('problem with request: ' + e.message);});
req.end();then from your http_client.js location run this command:
node http_client.jsyou should see this result:
> STATUS: 200> HEADERS: {"content-type":"text/plain","date":"Thu, 21 Jul 2016 11:27:17 GMT","connection":"close","transfer-encoding":"chunked"}> Response: OK> Response ENDEDnote: this example depend on http server example.