node package manager
Painless code sharing. npm Orgs help your team discover, share, and reuse code. Create a free org »

beanpoll-http

Features

  • expose your beanpole routes over HTTP
  • easy to specify HTTP Middleware

Plugins

  • http.gateway exposes your beanpole routes over HTTP.
  • http.server starts up the http server.
  • http.middleware middleware for http specific routes

Usage

Basic Configuration:

 
//sets add a require path to the app 
 
var loader = require('beanie');
 
 
loader.params({
    publicDir: __dirname + "/public"
    http: {
        port: 8080
    }
});
 
loader.
require('beanpoll-http').
load();

Middleware

Basic Auth Middleware

 
 
router.on({
    
    /**
     */
    
    'pull basic/auth/user/pass -> secret/route': function() {
        return "authorized!";
    },
    
    
    /**
     */
    
    'pull secret/route': function(request) {
 
        function login(user, pass, callback) {
 
            if(user == 'user' && pass == 'pass') return callback(false, { user: 'user' });
            
            callback('wrong user / pass');
        }
        
        request.forward('basic/auth', { login: login }, function(response) {
 
            request.end('authorized!');
        })
    }
});
 

Session Middleware

 
router.on({
    
    /**
     */
    
    'pull session -> account': function(request) {
        
        //should be "test" on next call 
        console.log(request.session.data.username);
        
        request.session.data.username = 'test';
    },
    
})