• spring cloud--zuul网关和zuul请求过滤


    这里仍然以Windows和jdk为运行环境,按照下面的步骤打包-运行-访问就能看到效果。启动项目jar包:
      java -jar F:jars-zuul egister-0.0.1-SNAPSHOT.jar
      java -jar F:jars-zuulzuul-0.0.1-SNAPSHOT.jar
      java -jar F:jars-zuul otes-0.0.1-SNAPSHOT.jar --server.port=9001
      java -jar F:jars-zuul otes-0.0.1-SNAPSHOT.jar --server.port=9002
    zuul网关配置文件配置如下内容,并在启动类加注解@EnableZuulProxy:
      #取名api-a映射一个应用#取名api-a映射一个服务
      server.port=3333
      zuul.routes.api-a.path=/api-a/**
      zuul.routes.api-a.service-id=notes
    zuul过滤器对输入的内容做了如下过滤处理:
      @Override
      public Object run(){
        HttpServletRequest request = RequestContext.getCurrentContext().getRequest();
        String string = request.getParameter("notes");
        if(string != null && string.contains("中国")){
          HttpServletResponse response = RequestContext.getCurrentContext().getResponse();
          try {
            OutputStreamWriter outputStreamWriter = new OutputStreamWriter(response.getOutputStream());
            outputStreamWriter.write("forbidden words!");
            outputStreamWriter.flush();
            outputStreamWriter.close();
          } catch (IOException e) {
            e.printStackTrace();
          }
        }
        return string;
      }
    新建spring boot项目(提供关于用户评论的接口),zuul实现了对notes服务的统一访问,访问地址:
      http://localhost:3333/notes?notes=中国,厉害了我的国。页面将返回过滤后的内容“forbidden words!”。
    源码地址:https://github.com/zhzhair/spring-cloud-examples.git。

  • 相关阅读:
    小的面试题
    email
    网络
    进程,线程
    周日作业
    Python_day9
    Python_day8
    假期作业
    12/13
    Python_day7
  • 原文地址:https://www.cnblogs.com/zhzhair-coding/p/9814766.html
Copyright © 2020-2023  润新知