Struts2 struts 1.2中的令牌拦截器

Struts2 struts 1.2中的令牌拦截器,struts2,struts,struts-1,struts-config,struts-validation,Struts2,Struts,Struts 1,Struts Config,Struts Validation,我的项目是struts1.2。struts1.2中是否有实现令牌拦截器(struts2)的方法? 我知道它可以通过使用 saveToken(HttpServletRequest-req) isTokenValid(HttpServletRequest-req) resetToken(HttpServletRequest-req) 但我不想在每一个动作中都添加以上内容 我知道struts2,但不知道struts1(因此这些解决方案从这个角度出发,struts1人在这个问题上可能有更漂亮的解决方案)

我的项目是struts1.2。struts1.2中是否有实现令牌拦截器(struts2)的方法? 我知道它可以通过使用

  • saveToken(HttpServletRequest-req)
  • isTokenValid(HttpServletRequest-req)
  • resetToken(HttpServletRequest-req)

  • 但我不想在每一个动作中都添加以上内容

    我知道struts2,但不知道struts1(因此这些解决方案从这个角度出发,struts1人在这个问题上可能有更漂亮的解决方案):

    1) 添加弹簧(如果它还不存在的话)。。。使用AOP添加这些方法。[成本:可能学习新技术]

    2) 在Struts1映射旁边使用Struts2。对Struts2执行操作,对Struts1执行操作。。。创建一个struts2包,可能称为“token”,可能映射到/token,并使用通配符执行适当的操作,以捕获您向它抛出的内容。。。将其转发到struts1操作PS:您询问了如何做到这一点。。。这一点都不漂亮,我不会这么做。[成本:使映射逻辑复杂化]

    3) 将所有内容转换为struts2并使用令牌拦截器。[成本:高时间投资]


    4) 创建一个新的基本操作类,您的操作将扩展该类,实现这些方法

    我知道struts2,但不知道struts1(因此这些解决方案从这个角度出发,struts1人在这个问题上可能有更漂亮的解决方案):

    1) 添加弹簧(如果它还不存在的话)。。。使用AOP添加这些方法。[成本:可能学习新技术]

    2) 在Struts1映射旁边使用Struts2。对Struts2执行操作,对Struts1执行操作。。。创建一个struts2包,可能称为“token”,可能映射到/token,并使用通配符执行适当的操作,以捕获您向它抛出的内容。。。将其转发到struts1操作PS:您询问了如何做到这一点。。。这一点都不漂亮,我不会这么做。[成本:使映射逻辑复杂化]

    3) 将所有内容转换为struts2并使用令牌拦截器。[成本:高时间投资]


    4) 创建一个新的基本操作类,您的操作将扩展该类,实现这些方法

    如果您想在Struts 2中使用TokenInterceptor,您必须参考tokenSession interceptor。
    必须在特定操作中按struts.xml中的name=“invalid.token”处理结果。

    在该页面上生成操作的页面,您必须在标题中写入s:token标记

    如果您想在Struts 2中使用TokenInterceptor,您必须引用tokenSession interceptor。
    必须在特定操作中按struts.xml中的name=“invalid.token”处理结果。

    Struts 1上不存在生成操作的页面,您必须在页眉中写入s:token标记,可以使用servlet过滤器。但请注意不要控制HTTP GET请求上的令牌,以免拒绝所有请求


    saveToken()用于所有请求,isTokenValid()resetToken()用于POST请求。

    Struts 1上不存在拦截器,可以使用servlet过滤器。但请注意不要控制HTTP GET请求上的令牌,以免拒绝所有请求


    saveToken()用于所有请求,isTokenValid()resetToken()用于POST请求。

    谢谢四元数,因为我使用了spring,所以我想使用第一个解决方案谢谢四元数,因为我使用了spring,所以我想使用第一个解决方案