如果网址中有跟踪问号,我有什么办法可以判断?理论上,这将是一个空的非空查询字符串,而根本没有问号将是一个空查询字符串。但无论哪种方式,我的网络应用都会获得request.getQueryString() == null
。
答案 0 :(得分:0)
String url = request.getRequestURL().toString();
if(url.indexOf("?")== -1){//it doesn't}
答案 1 :(得分:0)
这样的事情: -
boolean hasTrailingQuestionMark = "GET".equals(request.getMethod()) && request.getParameterNames().hasMoreElements();
我可能错了,但如果请求是GET且它有参数,那么我认为我们可以放心地假设URI后面有一个跟踪问号。
<强>更新强>
我刚测试了代码,这种方法只有在你有参数时才有效:http://server/bla?param=1
。但是,如果您只有http://server/bla?
,则此情况将失败。我不知道你是否想要捕获后一个URL签名。