我想从servlet读取HTTP请求中设置的确切URL。这与所有URL重写部分(;jsessionid=
...)一起使用。
可能吗?
最佳答案
您可以按以下方式获取请求URL(;
和?
之前的部分):
StringBuffer requestURL = request.getRequestURL();
您可以检查会话ID是否作为URL路径片段附加如下:
if (request.isRequestedSessionIdFromURL()) {
requestURL.append(";jsessionid=").append(request.getSession().getId());
}
您可以按以下方式获取并附加查询字符串:
if (request.getQueryString() != null) {
requestURL.append('?').append(request.getQueryString());
}
最后,获取完整的URL,如下所示:
String fullURL = requestURL.toString();