3 ms·
This is exactly the explanation I needed, thank you. I wonder what the rationale behind this decision was. It seems like a pretty easy way to mess up people li
by jessepollak 13y ago
This is exactly the explanation I needed, thank you.
I wonder what the rationale behind this decision was. It seems like a pretty easy way to mess up people like me :D. Any ideas?
- bzbarsky 13y agoProbably some combination of "this is what most browsers do" and wanting to have "http://foo.com:80" http://foo.com:80" and "http://foo.com" http://foo.com" have the same underlying representation.
- deathanatos 13y agoI don't think he's arguing that "http://example.com:80" http://example.com:80" and "http://example.com" http://example.com" should have different representations: I (and I think he) agrees they should, but that the representation should be "example.com:80", in both cases. I'm not so sure about host, but having port sometimes be "" seems like it could catch people off guard. For host, you now need to watch out for the cases where the port is/isn't present. For port, when it's "". To me, it's like the type of the variable. The variable "port" should contain the port, not (port|"").
- bzbarsky 13y agoAh, fair. The fact that port ends up as "" if it's default is almost certainly a "this is what most browsers do" kind of thing.
- ben010783 13y agoI think they just wanted to consistently handle the port, rather than exclude it when it is the default. I can understand wanting to be consistent, but their implementation even goes against the W3 specs: http://www.w3.org/TR/url/#url-decomposition-idl-attributes http://www.w3.org/TR/url/#url-decomposition-idl-attributes
- jxi 13y agoWay to post a misleading title just to get views. Why does shit like this even get upvoted? Learn to read the spec.