Tuesday, January 3, 2012

Nodejs with handlers in javascript

We can point site URL to a specific handler, created by nodejs(server side javascript). Hummm, Sounds exceptional. Let’s see.   We are able to create a server in previous post. Have you noticed request and response in the code? Request object contains all the Request properties. URL (string) is one of it. [In previously it was uri(object).]  From the url property we can get the requested url path and according to that we can handle the request as per plan. Pretty simple. Now see the code[written in notepad, you can use any other editor] -

var http = require('http');
var sys = require('util');
 var server = http.createServer(function(req, res) {
  switch (req.url) { //check the request url
    case '/’:
      display_home(req, res); //pointing handler
    case '/registration’: 
      display_registration (req, res);
      show_404(req, res);//no handler found
//====== Server generation and handler pointing is done======
//==========First handler===============
function display_ home (req, res) {
//======response type set=========
  res.writeHead(200, {'Content-Type': 'text/html'});
//=======response content============== 
    '<div> This is your home page</div><a  href=”/registration”> Click to register</a><a  href=”/nothing”> nothing</a>'
//========Second handler=================
function display_ registration (req, res) {
  res.writeHead(200, {'Content-Type': 'text/html'});
    '<div> This is your registration page</div>'
//==========Error handler==========
function show_404(req, res) {
  res.writeHead(404, {'Content-Type': 'text/plain'});
  res.end('No handler found');

Save the code with js extension. Run this with node command  as shown in previous post and traverse through your first nodeJs site.
Let me know your quires.

No comments: