以编程方式将 Tomcat 中的请求 URL 列入白名单

Programmatically Whitelisting Requesting URLs in Tomcat

虽然我知道我可以利用 web.xml 来允许或阻止我的网络应用程序或全局的某些 url,但我希望以编程方式执行此操作。

也就是说,需要将一些简单的正则表达式添加到属性文件中,我需要读取该属性文件,并根据这些正则表达式的匹配项接受或拒绝请求。

我应该在哪里输入该代码来接受或拒绝请求?

最后我是这样做的:

  1. 实施了 org.springframework.web.servlet.HandlerInterceptor 的实例。三种方法中,我只需要编码 boolean preHandle.
  2. 将这一行添加到我的应用程序上下文中:
<mvc:interceptors>
  <bean class="net.myurl.myapp.dashboard.web.interceptor.MyInterceptor" />
</mvc:interceptors>
  1. 使用方法request.getHeader("referer");获取请求服务器,并从那里做出决定。如果您希望 Tomcat/Spring 停止处理,您可以 return false ,如果您希望它继续进行,则可以为 true 。

最后很简单。