Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Adding metadata to express routes

Is there any way to add metadata to the routes in express? for example:

app.get("/some/route", function(req,res) {
// ...
}, { some: 'meta-data' });

I am looking at a sort of AOP approach to my node application so I want to proxy certain routes with authentication and/or logging. To do this I need to be able to assign some sort of hooking identifier to each route to indicate it should be proxied, so the AOP knows nothing about the individual methods and the methods know nothing about the AOP framework...

Then without getting too much off topic I would use something like hooker or some other proxying library to check through all routes where it has some and add a thing interceptor.

So anyway any best practice way to do the sort of thing mentioned above?

like image 832
Grofit Avatar asked Sep 03 '25 13:09

Grofit


1 Answers

You almost have it. You can use the bind method to bind variables to a function call.

app.get("/some/route", function(req,res) {
  res.send(this.test);
}.bind({test:'<html><body>hello world</body></html>'}));
like image 166
Daniel Avatar answered Sep 05 '25 03:09

Daniel