我今天遇到了以下网址:
http://www.sfgate.com/cgi-bin/blogs/inmarin/detail??blogid=122&entry_id=64497
请注意,查询字符串开头的问号已加倍:
??blogid=122&entry_id=64497
我的浏览器似乎没有任何问题,可以运行一个快速书签:
javascript:alert(document.location.search);
刚刚给了我上面显示的查询字符串。
这是有效的网址吗?我之所以如此腐(假设我是)是因为我需要解析此类URL作为查询参数,并且支持双问号将需要对我的代码进行一些更改。显然,如果它们在野外,我需要为其提供支持。我主要是好奇我是不是完全不遵守URL标准,还是实际上是非标准URL,这是我的错。
indexOf()
在查找问号,所以它拾取了第一次出现的位置。然后,我将query_parameters分别拆分&
,然后将其名称/值对拆分=
。