Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 拦截浏览器';s请求(post/get)_Java_Tomcat - Fatal编程技术网

Java 拦截浏览器';s请求(post/get)

Java 拦截浏览器';s请求(post/get),java,tomcat,Java,Tomcat,我正在寻找一种方法来编写一个程序,它应该拦截所有浏览器的post和get请求。 程序应该过滤这些请求并搜索一些资源。我想禁止访问这些资源。 这应该是一种家长控制。 我有: apachetomcad 爪哇 另外,对不起我的英语,我知道它不完美 谢谢 备注:该程序应为桌面应用程序。请尝试使用。这里有一个简短的描述 过滤器是一个对象,它对资源请求(servlet或静态内容)或资源响应执行过滤任务,或同时对两者执行过滤任务 本设计已确定的示例包括: 身份验证过滤器 日志和审核过滤器 图像转换滤波器

我正在寻找一种方法来编写一个程序,它应该拦截所有浏览器的post和get请求。 程序应该过滤这些请求并搜索一些资源。我想禁止访问这些资源。 这应该是一种家长控制。 我有:

  • apachetomcad
  • 爪哇
另外,对不起我的英语,我知道它不完美

谢谢

备注:该程序应为桌面应用程序。

请尝试使用。这里有一个简短的描述

过滤器是一个对象,它对资源请求(servlet或静态内容)或资源响应执行过滤任务,或同时对两者执行过滤任务

本设计已确定的示例包括:

  • 身份验证过滤器
  • 日志和审核过滤器
  • 图像转换滤波器
  • 数据压缩过滤器
  • 加密过滤器
  • 标记化过滤器
  • 触发资源访问事件的筛选器
  • XSL/T过滤器
  • Mime型链式过滤器

示例代码:

web.xml:

<filter>
    <filter-name>MyFilter</filter-name>
    <filter-class>com.x.y.z.servlet.MyFilter</filter-class>
</filter>

<filter-mapping>
    <filter-name>MyFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

使用?过滤器可能是正确的方法,但如果您希望过滤器对每个请求都进行搜索,请注意性能。
public class MyFilter implements Filter {


    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

        // read init-parameter from web.xml
    }


    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,
            FilterChain filterChain) throws ServletException, IOException {
        HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;
        String uri = httpServletRequest.getRequestURI();


        // do what you want to do based on uri

        // call below method to propagate it to next servet/jsp/filter in the chain
        // filterChain.doFilter(servletRequest, servletResponse);

    }    

    @Override
    public void destroy() {

    }
}