Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

router: need a better way to match on request extensions #6

Open
slogsdon opened this issue Sep 14, 2014 · 1 comment
Open

router: need a better way to match on request extensions #6

slogsdon opened this issue Sep 14, 2014 · 1 comment

Comments

@slogsdon
Copy link
Owner

caused by a route path with a capture and an extension at end of path.

Example:

/users/:user_id
/users/:user_id.json
/users/:user_id.xml
slogsdon added a commit that referenced this issue Sep 15, 2014
for #6. corrects original issue, but breaks a feature
@slogsdon slogsdon changed the title router: "cannot match because a previous clause always matches" errors router: need a better way to match on request extensions Sep 15, 2014
@slogsdon
Copy link
Owner Author

slogsdon commented Feb 9, 2017

Current dependence on Plug for route param parsing and Erlang's inability to pattern match binaries like param <> ".ext" makes this difficult to handle at compile time without rewriting a good amount of code.

Optimal solution at this point will probably be a plug to be early in the call stack, parsing the last captured param for an extension/MIME-type, setting Accept header, and removing the extension

😕

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant