struts2 - token 拦截器和 token session 拦截器之间的区别?

标签 struts2 interceptor

我知道这两个拦截器都是用来防止重复表单提交的?但它们两者之间到底有什么区别呢? 哪一个比其他有更多优势?

最佳答案

tokenSession 扩展了 token 拦截器,它们都用于确保每个 token 仅处理一个请求。不同之处在于无效 token 的处理。 当发现无效 token 时,token 拦截器仅返回 invalid.token 结果。无效 token 上的 tokenSession 拦截器将尝试显示与有效 token 时显示的相同响应。

一些伪代码用于说明 tokenSession 拦截器的工作流程:

intercept() {
  if(validToken){
    storeInvocation();
    return invocation.invoke();
  }else {
    ActionInvocation storedInvocation = loadStoredInvocation();
    // ...
    return storedInvocation.getResultCode();
  }
}

关于struts2 - token 拦截器和 token session 拦截器之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19525888/

相关文章:

java - 如何从struts2发送数据到javascript函数来绘制图表

java - Spring JPA/Hibernate EmptyInterceptor 不注入(inject) Entitymanager/Spring beans

java - Struts2 自定义异常映射拦截器

c# - Web API - 拦截器 - 拦截异步 Controller 操作

java - Spring boot 不接收从 Angular 客户端添加的请求 header

java - 如何拥有多个调用 `invocation.invoke()` 的 Struts2 拦截器?

java - tomcat输出一些乱码

java - 如何获取Interceptor中action url中定义的参数

java - 在 Struts 2 中初始化 Action 类字段的正确方法是什么?

java - 为什么拦截器会破坏Struts 2中的通配符?