网关_zuul_Route三种过滤器使用方式

1、网关通过url到服务

  

 1 @Override
 2     public Object run() throws ZuulException {
 3         RequestContext currentContext = RequestContext.getCurrentContext();
 4         HttpServletRequest request = currentContext.getRequest();
 5         //获取访问地址
 6         String remoteAddr = request.getRequestURI();
 7 
 8         //和老地址做匹配
 9         if(remoteAddr.contains("/send/sms-test31")){
10             //服务具体路径
11             currentContext.set(FilterConstants.REQUEST_URI_KEY,"/send/sms-test3");
12             //服务实例
13             currentContext.set(FilterConstants.SERVICE_ID_KEY,"service-sms");
14         }
15 
16 
17         return null;
18     }

 

2、网关访问具体url服务

访问指定url跳转具体的后端服务

@Override
    public Object run() throws ZuulException {
        RequestContext currentContext = RequestContext.getCurrentContext();
        HttpServletRequest request = currentContext.getRequest();
        //获取访问地址
        String remoteAddr = request.getRequestURI();
        //和老地址做匹配
        if(remoteAddr.contains("/zuul-test")){
            currentContext.set(FilterConstants.SERVICE_ID_KEY,"service-sms");
            try{
                currentContext.setRouteHost(new URI("http://localhost:8003/send/sms-test3").toURL());
            }catch (Exception e){

            }
        }
        return null;
    }

  

3、网关的自我转发

yml:

 

zuul:
  routes:
    aaa:
      path: /forward1/**
      url:  forward:/myyml

 

java:

访问:http://localhost:9100/forward1,完成自我转发

@RequestMapping(value = "/myyml")
    public String test(){
        return "myyml";
    }

 

上一篇:2.2.4.4-Packet Tracer - 配置 IPv6 静态路由和默认路由


下一篇:vue路由--Vue Router