Skip to content
This repository

IPv6 address URL parsing fails #2362

Closed
bkoenig opened this Issue August 30, 2011 · 3 comments

3 participants

bkoenig Kin Blas John Bender
bkoenig

If you use jQuery Mobile with an IPv6 address in the URL, e.g.

http://[3fff:cafe:babe::]:443/foo

then it won't work at all because URL parsing fails. I fixed the hostname part of the urlParseRE to make it work.

Currently it reads
([^:\/#\?]+)
At first disallow [ and ] in hostnames:
([^\[\]:\/#\?]+)
Then add the special IPv6 case as an alternative:
([^\[\]:\/#\?]+|\[[0-9a-fA-F:]+\])

Please review.

Thank you and best regards
Björn

John Bender johnbender closed this in f679d30 August 30, 2011
John Bender

Based on my reading here: http://www.ietf.org/rfc/rfc3986.txt I made alterations to prevent matching on the reserved characters described in section 3.2.2 for the host portion.

/([^:\/#\?\]\[]+|\[[^\/\]@#\?]+\])/

Any review here is appreciated, and if you feel particularly energetic we'd love some additions to the test suite if you spot issues :D

Kin Blas

@bkoenig

Thanks for catching the problem.

@johnbender

Looks good. Thanks for landing the final fix and for the tests!

John Bender

@jblas

For you? Anything. :D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.