This is my awesome rack router. Mad props to Josh Peek, a lot (most?) of the concepts come from him. TODO: * Freeze the route object when it gets compiled Some points for discussion: --------------------------- * Caching the request object * Passing routing parameters to the app. Currently with env['rack_router.params] * How should an application tell the router that it cannot handle the request? Currently this is with a custom header * Should I pass in the matched route in the env Currently with env['rack_router.route'] * Should I allow an arbitrary hash to be set on the route (so that you can track any information). * How should multiple request objects be handled in context of mounting. * Be able to provide route paths using the internal array / string / symbol representation
Not written in Markdown, so it's shown here as plain text β view it formatted on GitHub.
Ruby
100.0%
This is my awesome rack router. Mad props to Josh Peek, a lot (most?) of the concepts come from him. TODO: * Freeze the route object when it gets compiled Some points for discussion: --------------------------- * Caching the request object * Passing routing parameters to the app. Currently with env['rack_router.params] * How should an application tell the router that it cannot handle the request? Currently this is with a custom header * Should I pass in the matched route in the env Currently with env['rack_router.route'] * Should I allow an arbitrary hash to be set on the route (so that you can track any information). * How should multiple request objects be handled in context of mounting. * Be able to provide route paths using the internal array / string / symbol representation
Not written in Markdown, so it's shown here as plain text β view it formatted on GitHub.
Ruby
100.0%