Java HttpServletRequest getquerystring

3
在我的servlet中,当一个ajax请求被发送到它时,req.getQueryString()返回null。这是因为req.getQueryString()只适用于GET而不是POST吗?
public void doPost(HttpServletRequest req, HttpServletResponse resp) 
        throws ServletException, IOException {
req.getQueryString();
}
3个回答

10

获取请求参数最简单的方法是使用request.getParameter()。这适用于GET和POST请求。

POST请求通常将其参数包含在请求正文中,这就是为什么request.getQueryString()方法返回null的原因。


1

来自文档:

如果URL没有查询字符串,则此方法返回null。

由于您在doPost()处理程序中,我们可以假设请求确实没有查询字符串,因为它是一个POST请求。


1

POST请求可能有查询字符串,但这很少见。 POST数据直接包含在浏览器发送到服务器的HTTP头之后。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接