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

这里仍然以Windows和jdk为运行环境,按照下面的步骤打包-运行-访问就能看到效果。启动项目jar包:
  java -jar F:\jars-zuul\register-0.0.1-SNAPSHOT.jar
  java -jar F:\jars-zuul\zuul-0.0.1-SNAPSHOT.jar
  java -jar F:\jars-zuul\notes-0.0.1-SNAPSHOT.jar --server.port=9001
  java -jar F:\jars-zuul\notes-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。

转载于:https://www.cnblogs.com/zhzhair-coding/p/9814766.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值