Sha256: 8ef5da0286eea17d3378005bc4fe9179569a06f3b0598e910cf0d36c2959cd46

Contents?: true

Size: 1.37 KB

Versions: 26

Compression:

Stored size: 1.37 KB

Contents

## Rest

The _router_ middleware provides a routing API similar to that of Sinatra and Express.

	function user(app) {
		app.get('/users/(all.:format?)?', function(req, res){
			// populates req.format
	        // ex:
	        //   GET /users
	        //   GET /users/all
	        //   GET /users/all.json
	        //   GET /users/all.xml
		});
		
		app.get('/users/:id.:format?': function(req, res){
			// populates req.format
		    // populates params.id
		    // ex:
		    //   GET /user/5
		    //   GET /user/5.json
		    //   GET /user/5.xml
		});
		
		app.put('/user/:id', function(req, res, params){
			// populates params.id
			// ex:
			//   PUT /user/2
		});
		
		app.del('/user/:id/file/*', function(req, res, params){
			// populates params.id
			// populates params.splat[0]
			// ex:
			//   PUT /user/4/file/javascripts/jquery.js
			//   PUT /user/4/file/stylecss
		});
	}
	
	function commits(app) {
		// RegExps too!
		app.get(/\/commit\/(\w+)\.\.(\w+)\/?/i, function(req, res, params){
			// populates params.splat[0] with first capture group
			// populates params.splat[1] with second capture group
			// ex:
			//   GET /commit/kj4k..d3sdf
        });
	}

    connect.createServer(
		connect.router(user),
		connect.router(commits),
	);

Those of you looking for _PUT_ and _DELETE_ support may want to take a look at the _methodOverride_ middleware.

### See Also

  * methodOverride

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
vulcan-0.8.2 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.8.1 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.8.0 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.7.2 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.7.1 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.7.0 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.6.1 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.6.0 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.5.0 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.4.0 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.3.0 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.2.5 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.2.4 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.2.3 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.2.2 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.2.1 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.2.0 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.1.6 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.1.5 server/node_modules/connect-form/support/connect/docs/router.md
vulcan-0.1.4 server/node_modules/connect-form/support/connect/docs/router.md