-
Notifications
You must be signed in to change notification settings - Fork 428
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
Unwanted encoding of "$" in URL path #246
Comments
excerpt from rfc:
I'm not sure $ has any special meaning in http context. looks more like url parsing/routing failure on the server-side |
@deadtrickster Thank you for your comment. 1> http_uri:encode("$").
"$" |
The hackney URI parser is based on the chromium one and http_uri does less. Reading the RFC 3986 , reserved characters should be percent encoded Passing a list of reserved chars to the request may be a solution. Thoughts? |
@benoitc -- I have a potential fix to this issue on a local branch. If y'all decide not to go down the reserved chars path, I'll submit a PR. |
@benoitc |
@dtykocki 👍 feel free to send early so we can play with the patch :) I am myself working on hackney today |
👍 For better or worse, there are APIs that use suspicious characters. For instance, I can't use the LinkedIn API with Hackney because they use "(" and ")" in their URLs: https://developer.linkedin.com/docs/signin-with-linkedin |
@jflatow you mean they don'decode urls? i thin the best solution for that would be offering a mode letting the users to encode the urls the way they want and a strict mode, the default. thoughts? |
Right - yes - I agree that would be a good option. |
@benoitc I'm also running into a situation where a service outside my control expects certain characters to not be URL encoded. (In this case, they're using it as a delimiter, which the linked RFC section above specifically notes is the scenario where precent encoding the reserved character would produce the wrong response) EDIT The Chromium source linked to from hackney_url, marks I can send a PR to update the lookup table here. |
Similar to #176 but this time is about
$
.I'm trying to access to a URL whose path contains
$
, e.g.hackney converts
$
to%24
before sending request and results in 404 NotFound error.For reference:
The text was updated successfully, but these errors were encountered: