我想了解Struts2拦截器。所以请原谅,如果我的问题是愚蠢的。Struts2:拦截器可以处理未经授权的访问吗?
我猜拦截器是特定于动作类的(这意味着在调用特定动作类之前,它们会被调用)。
例如:
<action name="test" class="com.jranch.Test">
<interceptor-ref name="GuiStack”/>
<result name="success">/secure.jsp</result>
</action>
我的问题是:假设其中一个网站的图片必须防止未经授权的访问情况(也就是说,如果用户直接进入浏览器的URL,他们不应该被允许直到他们登录才能看到图片)。
我的看法是,如果它与Servlet过滤器有关,我可以通过将url-pattern标记放到/ *来检查所有请求来编写一个简单的过滤器。 Struts2拦截器可以处理这个,因为我猜它们是针对动作类的?
如果我错了,请纠正我。
操作属于一个包,通常拦截器被分组为一个拦截器堆栈,然后应用到一个包。如您所示,您都可以将拦截器应用于特定的操作。本书“struts2 in action”展示了如何实现基本的安全性,就像你要求的那样,并解释你需要理解它(这个解决方案几乎是umesh提供的)。由于我提到了一本书,如果您需要快速加速,那么只需提及“Apache Struts 2 Web应用程序开发”即可。 – Quaternion