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

URL fragment percent-encoding #172

Open
kaittodesk opened this issue Apr 27, 2023 · 0 comments
Open

URL fragment percent-encoding #172

kaittodesk opened this issue Apr 27, 2023 · 0 comments

Comments

@kaittodesk
Copy link

We are using furl to normalize templated URLs:

normalized_url = furl(rendered_url).tostr("&", False)

But we encounter a bit of an odd behavior when normalizing URLs which have a very specific fragment, and aren't sure if this is an expected or not.

For example normalizing following URL yields an unexpected result (fragment's forward slash gets percent-encoded):

normalized_url = furl("https://example.com/path/#/foo=123").tostr("&", False)
# Actual: https://example.com/path/#%2Ffoo=123
# Expected: https://example.com/path/#/foo=123

However when the URL fragment contains a separator (?) or does not contain an equals sign (=) it works as expected:

normalized_url = furl("https://example.com/path/#/?foo=123").tostr("&", False)
# Actual: https://example.com/path/#/?foo=123
# Expected: https://example.com/path/#/?foo=123

normalized_url = furl("https://example.com/path/#/foo").tostr("&", False)
# Actual: https://example.com/path/#/foo
# Expected: https://example.com/path/#/foo

We are using the latest version of furl==2.1.2.

Looking forward to your feedback.

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