gpt4 book ai didi

spring - 将扩展名添加到 URL 时强制出现 404 错误

转载 作者:行者123 更新时间:2023-12-02 06:29:31 25 4
gpt4 key购买 nike

当我转到以下位置时,我需要一些有关 URL 映射的帮助,在我的代码中:

http://localhost:8080/register.asdf
http://localhost:8080/register.asddsdsd etc.

它总是返回http://localhost:8080/register,但我想让它404 NOT FOUND
我该如何解决这个问题?

public class WebInitializer implements WebApplicationInitializer {

@Override
public void onStartup(ServletContext servletContext) throws ServletException {
AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
ctx.register(Config.class);
ctx.setServletContext(servletContext);
Dynamic servlet = servletContext.addServlet("dispatcher", new DispatcherServlet(ctx));
servlet.addMapping("/");
servlet.setLoadOnStartup(1);
}

}

@Controller
public class UserController {

@RequestMapping(path = "/register", method = RequestMethod.GET)
public String registerGet(Model model) {

return "register";
}

编辑:我在 Config.java 中添加了以下代码并解决了,谢谢。

@Override
public void configurePathMatch(PathMatchConfigurer configurer) {
configurer.setUseSuffixPatternMatch(false);
}

最佳答案

您可以在@RequestMappingservlet.mapping 中限制映射更改。更改请求映射:

@RequestMapping(path = "/register.htm", method = RequestMethod.GET)//for example  

或者servlet.mapping:

servlet.addMapping("*.htm");  

编辑:如果您使用 Spring 4.X,您可以使用:

<mvc:annotation-driven>
<mvc:path-matching suffix-pattern="false" />
</mvc:annotation-driven>

关于spring - 将扩展名添加到 URL 时强制出现 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32755163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com