🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

httpdispatcher

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

httpdispatcher

A simple class allows developer to have a clear dispatcher for dynamic pages and static resources.

2.2.0
latest
Source
npm
Version published
Weekly downloads
6.8K
16.02%
Maintainers
1
Weekly downloads
 
Created
Source

httpdispatcher - basic dispatcher for node.js

httpdispatcher is a simple class allows developer to have a clear dispatcher for dynamic pages and static resources. Classes http.ServerRequest and http.ServerResponse earns new params property containing a map of received HTTP parameters. Using httpdispatcher is pretty simple:

    var HttpDispatcher = require('../httpdispatcher');
    var http           = require('http');
    var dispatcher     = new HttpDispatcher();

    dispatcher.setStatic('/resources');
    dispatcher.setStaticDirname('static');

    dispatcher.onGet("/page1", function(req, res) {
        res.writeHead(200, {'Content-Type': 'text/plain'});
        res.end('Page One');
    }); 

    dispatcher.onPost("/page2", function(req, res) {
        res.writeHead(200, {'Content-Type': 'text/plain'});
        res.end('Page Two');
    });

    dispatcher.beforeFilter(/\//, function(req, res, chain) { //any url
        console.log("Before filter");
        chain.next(req, res, chain);
    });

    dispatcher.afterFilter(/\//, function(req, res, chain) { //any url
        console.log("After filter");
        chain.next(req, res, chain);
    });

    dispatcher.onError(function(req, res) {
        res.writeHead(404);
        res.end();
    });

    http.createServer(function (req, res) {
        dispatcher.dispatch(req, res);
    }).listen(1337, '127.0.0.1');
    
    
    /*
    GET  /page1  => 'Page One'
    POST /page2  => 'Page Two'
    GET  /page3  => 404
    GET  /resources/images-that-exists.png => Image resource
    GET  /resources/images-that-does-not-exists.png => 404
    */

request and response

Every listeners is called with two parameters request and response.

Request object is an instance of http.ClientRequest with some custom properties:

  • bodyBuffer : Buffer (available only on POST request)
  • body : String (available only on POST request)
  • params : Object

Response object is an instance of http.ServerResponse.

Keywords

util

FAQs

Package last updated on 30 Nov 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts