Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
ampersand-express-router
Advanced tools
Serverside backbone router inspired by backbone router and ampersand-router.
Serverside backbone router for express 4. Mostly lifted from Backbone.js.
Part of the Ampersand.js toolkit for building severside applications.
npm install ampersand-express-router
var Router = require('ampersand-express-router');
var express = require('express');
var bodyParser = require('body-parser');
var app = express();
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({
extended: false
}));
// parse application/json
app.use(bodyParser.json());
var UserRouter = Router.extend({
// ------- ROUTES DEFINITIONS ---------
routes: {
'users|post': 'create',
'users|delete': 'destroy',
'users|put': 'edit',
'users|get': 'all',
'users/:id|get': 'show'
},
// ------- ROUTE HANDLERS ---------
create: function(request, response) {
response.json({
name: 'create'
});
},
destroy: function(request, response) {
response.json({
name: 'destroy'
});
},
edit: function(request, response) {
response.json({
name: 'edit'
});
},
all: function(request, response) {
response.json({
name: 'all'
});
},
show: function(request, response) {
response.json({
name: request.param('id')
});
}
...
});
var UsersRoute = new UserRouter({
app: app
});
app.listen(3000);
Router.extend(properties)
Get started by creating a custom router class. Define actions that are triggered when certain URL are matched, and provide a routes hash that pairs routes to actions. Note that you'll want to avoid using a leading slash in your route definitions:
var UserRouter = Router.extend({
routes: {
"users|get": "all", // /users
"users/:id": "show", // /users/11
},
all: function(request,response,next) {
//...
},
show: function(request,response,next) {
//...
}
});
router.routes
The routes hash maps URLs with parameters to functions on your router. Routes can contain path parameter parts, :param
.
new Router([options])
When creating a new router, you must pass an instance of express application which this router will be mounted into and additional express router options.
All credit goes to Jeremy Ashkenas and the rest of the Backbone.js authors.
MIT
FAQs
Serverside backbone router inspired by backbone router and ampersand-router.
The npm package ampersand-express-router receives a total of 0 weekly downloads. As such, ampersand-express-router popularity was classified as not popular.
We found that ampersand-express-router demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.