• 后端——框架——视图层框架——spring_mvc——《官网》阅读笔记——第一章节28(过滤器,其他Filter)


    1、FormContentFilter

      默认情况下,只有GET,POST请求的参数可以通过调用request.getParamter()获取。FormContentFilter拦截器,可以使PUT,DELETE, PATCH请求的参数也适用于getParamter方法。

    1.1  使用

      相当于给Web应用添加拦截器。

      1、配置FormContentFilter拦截器拦截DispatcherSerlvet。代码如下:

    // 添加过滤器
    FilterRegistration.Dynamic filterRegistration = servletContext.addFilter("formContentFilter", new FormContentFilter());
    // 配置请求的分发类型
    EnumSet<DispatcherType> dispatchers = EnumSet.of(DispatcherType.REQUEST, DispatcherType.ASYNC, DispatcherType.FORWARD,DispatcherType.INCLUDE);
    filterRegistration.addMappingForServletNames(dispatchers, true, "dispatcherServlet");
    

      2、编写任意的PUT,DELETE请求验证即可

    2、ForwardedHeaderFilter

      引用原著中的定义:

    ForwardedHeaderFilter is a Servlet filter that modifies the host, port, and scheme of the request, based on Forwarded headers, and then removes those headers

    ForwardedHeaderFilter可以修改请求头中关于主机,端口,协议等信息。请求头中记录这些信息的属性有:

    static {
    	FORWARDED_HEADER_NAMES.add("Forwarded");
    	FORWARDED_HEADER_NAMES.add("X-Forwarded-Host");
    	FORWARDED_HEADER_NAMES.add("X-Forwarded-Port");
    	FORWARDED_HEADER_NAMES.add("X-Forwarded-Proto");
    	FORWARDED_HEADER_NAMES.add("X-Forwarded-Prefix");
    	FORWARDED_HEADER_NAMES.add("X-Forwarded-Ssl");
    }
    

      我对这些信息不了解,本处省略。

  • 相关阅读:
    nginx源代码分析--监听套接字的创建 套接字的监听 HTTP请求创建连接
    JSP中Session的使用
    令人作呕的OpenSSL
    bottle的几个小坑
    UVA 11997
    Rational Rose 2007 &amp;Rational Rose 2003 下载及破解方法和汉化文件下载
    MyEclipse下XFire开发Webservice实例
    OpenTSDB设计解读
    Spring整合Hibernate的步骤
    linux服务之audit
  • 原文地址:https://www.cnblogs.com/rain144576/p/12902959.html
Copyright © 2020-2023  润新知