-
Notifications
You must be signed in to change notification settings - Fork 17
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
host() returns undefined if URL is 'localhost' #2
Comments
This is intentional. There is no way to know whether this is representative of a hostname or path. Imagine a current URL of: When the String used to construct a new |
This seems like the right behavior to me. Other URL parsing libs do the same thing. Node.js:
Ruby:
|
Don't agree. If I go to localhost in Google Chrome and type: document.location in the console, host is handled properly. |
That's because Chrome has context. When you type "localhost" in the URL bar, it assumes you meant "http://localhost", because that's much more likely to be your intent than "file:///localhost" or something else. So Chrome browses to the hostname "localhost", and A generic URL parsing library is not a browser, and can't make browser-like assumptions about user intent, because the prupose of a generic URL parsing library is to parse URLs, not to display web pages to users. Given that the other non-browser-related generic URL parsing libraries I've tried have treated "localhost" as a path rather than a hostname, I think this behavior is well established, and violating it would violate the principle of least surprise. A BrowserURL class that extends URL and provides more browser-like URL behavior would be well within its rights to interpret "localhost" as a hostname, however. |
A browser's Address Bar is afforded more contextual information in that it assumes a String which does not begin with a To solve you're particular use-case, |
Sorry but I wrongly wrote the original issue. I rechecked and It is:
even if I use 'http://localhost' |
@srw Ah okay. I can verify that this is in fact happening: http://jsfiddle.net/ericf/JhPCH/ |
Is there a solution to this issue yet? I'd like to fix it myself, but my regexp is pretty limited and it seems URL_ABSOLUTE_REGEX is the variable that needs to be modified for this to work correctly |
@dunkdt It has not been resolved yet. I'd like to eventually revisit this project and change the core rexexes that it uses. I just haven't had time to dedicate to doing that since it is currently meeting my needs. |
I tried also with http://code.google.com/p/jsuri/ may be good to integrate all URI's parsers? I don't see that competition is good in this terrain! |
@srw Yup! I want to replace the guts to use http://blog.stevenlevithan.com/archives/parseuri |
Also, I found out about jsURI after I wrote this project :P |
I also consider it a bug that |
The text was updated successfully, but these errors were encountered: