通配符路径映射 /A/* 应该 return 404 当路径信息不存在时 /A
Wildcard path mapping /A/* should return 404 when path info is absent like /A
我是 Servlet 新手。我正在尝试使用 通配符 (*) 映射 URL,但它没有按我预期的方式工作。
这是我的 servlet class。
@WebServlet(urlPatterns = {"/A/*"})
public class TestServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().write("Working...");
}
}
上述 servlet 适用于 example.com/A 和 example.com/A/car。
我只想为第二个选项使用 servlet,即 example.com/A/whatEver。我该怎么做?
简单来说:如果 example.com/A.
之后有任何内容,我只想使用 servlet
任何帮助将不胜感激。
只需调用 HttpServletResponse#sendError()
with SC_NOT_FOUND
(404) when HttpServletRequest#getPathInfo()
is null or empty or equals 到 /
。
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String pathInfo = request.getPathInfo();
if (pathInfo == null || pathInfo.isEmpty() || pathInfo.equals("/")) {
response.sendError(HttpServletResponse.SC_NOT_FOUND);
return;
}
// ... (continue)
}
我是 Servlet 新手。我正在尝试使用 通配符 (*) 映射 URL,但它没有按我预期的方式工作。
这是我的 servlet class。
@WebServlet(urlPatterns = {"/A/*"})
public class TestServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().write("Working...");
}
}
上述 servlet 适用于 example.com/A 和 example.com/A/car。 我只想为第二个选项使用 servlet,即 example.com/A/whatEver。我该怎么做?
简单来说:如果 example.com/A.
之后有任何内容,我只想使用 servlet任何帮助将不胜感激。
只需调用 HttpServletResponse#sendError()
with SC_NOT_FOUND
(404) when HttpServletRequest#getPathInfo()
is null or empty or equals 到 /
。
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String pathInfo = request.getPathInfo();
if (pathInfo == null || pathInfo.isEmpty() || pathInfo.equals("/")) {
response.sendError(HttpServletResponse.SC_NOT_FOUND);
return;
}
// ... (continue)
}