zoukankan      html  css  js  c++  java
  • springcloud Zuul学习笔记

      SpringCloud Zull是一个基于NetflixZuul实现的API网关组件,它实现了请求路由,负载均衡,校验过滤等功能;本文主要记录springcloud zuul的入门级demo开发过程;

       Zull相当于用户和微服务之间的一个屏障,进行相关配置后它先于微服务接收用户请求并过滤、校验并进行转发,这样大大提高了微服务的安全性

      跟之前提到的springcloud组件一样,开发一个简单的zull服务我们只需要关注以下几点:

     1、pom.xml

        <!-- 导入zuul的依赖 -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-zuul</artifactId>
            </dependency>

     2、application.properties

    server.port=9999
    #应用名称
    spring.application.name=zuulServer
    
    # 是否需要将自己注册到注册中心中,默认值true
    eureka.client.registerWithEureka=true
    
    # 是否从注册中心中获取注册信息,默认值true
    eureka.client.fetchRegistry=true
    
    # 客户端和服务端进行交互的地址
    eureka.client.serviceUrl.defaultZone=http://127.0.0.1:7070/eureka/,http://127.0.0.1:7071/eureka/
    
    #将自己的ip地址注册到Eureka服务中
    eureka.instance.prefer-ip-address=true
    
    ############ 进行zuul配置 ############
    # 配置拦截的url,表示拦截sso开头的所有请求并进行服务转发
    zuul.routes.loginserver.path=/sso/**
    
    # 拦截到上面的path后制定分发个loginServer(之前开发的登录服务名称)
    zuul.routes.loginserver.serviceId=loginServer

     3、项目的启动类

    @EnableZuulProxy 
    @SpringBootApplication
    public class ZuulApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(ZuulApplication.class, args);
        }
    }

    4、过滤器的编写

    /**
     * zuul的过滤器
     */
    @Component
    public class LoginZuulFilter extends ZuulFilter {
        @Override
        public String filterType() {
            return "pre";
        }
    
        @Override
        public int filterOrder() {
            return 0;
        }
    
        @Override
        public boolean shouldFilter() {
            return false;
        }
    
        @Override
        public Object run() throws ZuulException {
            RequestContext context = RequestContext.getCurrentContext();
            System.out.println("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆成功进入了过滤器☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆");
            return null;
        }
    }
  • 相关阅读:
    MS SQL Server 2000安装不成功的原因
    SourceForge.net上的一些精品项目(路径修正)
    开源轻量级嵌入式数据库引擎SQLite 3.1.0版大量新特性!
    解惑:灵感之源的博客到底在写些什么东西?
    [新年水贴]三道题变猪头(z)聪明的人们来试试
    SourceForge.net上的一些精品项目(2)
    关于antispy反间谍软件的研究
    [水贴]一个员工请假被拒绝的理由...
    [新年水贴]2004网络故事残忍度排名
    [新年水贴]老婆和老公斗智〖笑倒〗
  • 原文地址:https://www.cnblogs.com/darling2047/p/9544099.html
Copyright © 2011-2022 走看看