Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.69 KB | None | 0 0
  1. var routes = [];
  2. var registerRoute = (method, url, fn) => {
  3. routes.push({method: method,
  4. url: url,
  5. fn: fn});
  6. };
  7.  
  8. var routeMatch = (route, url) => {
  9. return route === url || route === undefined;
  10. };
  11.  
  12. var methodMatch = (routeMethod, method) => {
  13. return routeMethod === method || routeMethod === undefined;
  14. };
  15.  
  16. var mapToRouteMatch = (req) => {
  17. return (route) => {
  18. return routeMatch(route.url, req.url)
  19. && methodMatch(route.method, req.method);
  20. }
  21. };
  22.  
  23. var handleRequest = (req, res) => {
  24. var matchedRoutes = routes.filter(mapToRouteMatch(req));
  25. matchedRoutes.some((route) => route.fn(req, res));
  26. };
  27.  
  28. module.exports.registerRoute = registerRoute;
  29. module.exports.handleRequest = handleRequest;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement