JAV*_*eek 13 java servlets httprequest url-pattern java-ee
我有一个EmailVerification
使用/ev/*
url-pattern 映射的Servlet .
http://example.com/ev/ce52320570
Run Code Online (Sandbox Code Playgroud)
如何ce52320570
在Servlet中获取URL的这一部分?
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String vid = ""; // Here I need to get the id from the URL
}
Run Code Online (Sandbox Code Playgroud)
acd*_*ior 31
考虑将Servlet(被调用EmailVerification
)映射到/ev/*
:
URL会
http://example.com/ev/ce52320570
触发EmailVerification
servlet吗?
是.在Servlet版本2.5和3.0(可能更早)中,如果你用它来映射它就会获得子路径*
,就像/ev/*
你一样.
我怎样才能获得这
ce52320570
部分网址http://example.com/ev/ce52320570
?
request.getRequestURI()
会String
像你一样得到所要求的网址/ev/ce52320570
.
request.getPathInfo()
得到你(如果存在)之后的一切/ev/
.
/ev/123
,getPathInfo()
会给你/123
.同样的方式,请求/ev/some/other
,getPathInfo()
会给你/some/other
.request.getQueryString()
如果您需要URL 的查询参数部分,则应该使用它.
getRequestURI()
并getPathInfo()
给你只是路径请求.如果您需要获取查询参数,也就是那些之后?
,像/ev/something?query1=value1&other=123
,只request.getQueryString()
将返回query1=value1&other=123
一部分.request.getParameter(parameterName)
如果需要特定查询参数的值.
.getParameterValues()
如果它是一个多值参数,请求它此处请求中的URL部分的更多示例.