如何获取包含参数的请求字符串

2022-09-01 11:19:21

我的应用程序中有一个奇怪的异常,我想在它发生时记录并包含完整的请求字符串,包括参数。

当我尝试时

log.warn("Weird request " + request.getRequestURL());

我得到请求字符串,但不是包含在 ?和 &.

例:

/testRequest.do?param1=1&param2=2

我只看到

/testRequest.do

我可以把整根弦放在某个地方吗?


答案 1

请参阅 HttpServletRequest#getQueryString()

如果你想要整个字符串,则必须将请求 url 和查询字符串追加在一起,因为没有方法可以获取整个内容。

System.out.println(request.getRequestURL().append('?').append(request.getQueryString()));

答案 2

推荐