URL可以拥有的最小长度有效查询字符串是什么?
The query component is indicated by the first question
mark ("?") character and terminated by a number sign ("#") character
or by the end of the URI.
...
query = *( pchar / "/" / "?" )
那么,长度是三:pchar/?
或者它是两个:/?
为了给出一些代码和背景,我在GWT中检查这个:
if(Location.getQueryString().isEmpty() || Location.getQueryString().length() < 1) { //or whatever valid min length for query strings is
我的关注点基本上是确保我们正在使用的查询字符串有效。因此,为了验证这一点,我要检查它是否为空。在使用Location.getQueryString()
?
答案 0 :(得分:0)
Window.Location.getQueryString()
是JS window.location.search
的GWT版本。这意味着当URL根本不包含查询字符串时它是空的(或者没有检查),否则以?
开头(如果查询字符串则意味着它等于?
存在,但“空”,例如,网址以?
结尾,或?
后面紧跟#
)。
重新。问题的开头,*( pchar / "/" / "?" )
表示“与 pchar 生产匹配的任意数量的字符,或者/
或?
,pchar
一组有效字符,或% - 编码的。)因此长度由生产的*
部分决定,这意味着0 or more。但这定义了查询字符串的“内容” ,没有?
分隔符;如果网址中有查询字符串,则window.location.search
将包含?
。