Zuul网关探秘

Spring cloud zuul

  • 介绍
    Spring Cloud创建了一个嵌入式Zuul代理,以简化一个非常常见的用例的开发,在这个用例中,UI应用程序希望代理对一个或多个后端服务的调用。该功能对于用户界面来说非常有用,可以代理到所需的后端服务,从而避免了为所有后端独立管理CORS和身份验证问题的需要。
  • 在启动类上用@EnableZuulProxy启用
java 复制代码
	@SpringBootApplication
	@EnableZuulProxy
	public class Application {
	
	}
  • 基本配置
yml 复制代码
	 zuul:
	  ignoredServices: '*' 
	  routes:
	    users: /myusers/**   
  1. zuul.ignoredServices 所有的service都被忽略,除了users
  2. zuul.router.{serviceName} 调用/myusers的配置比如 "/myusers/api/user/add" 转发到 "/api/user/add"
  • 更细粒度配置
yml 复制代码
	  zuul:
	  ignoredPatterns: /**/admin/**
	  routes:
	    users:
	      path: /myusers/**
	      serviceId: users_service
	      stripPrefix: false
	      sensitiveHeaders: Cookie,Set-Cookie,Authorization   
  1. zuul.ignoredPatterns 请求中包含的字符将不被转发解析
  2. zuul.router.{serviceName}.path 代理路径
  3. zuul.router.{serviceName}.serviceId 代理serviceId
  4. zuul.router.{serviceName}.stripPrefix 是否去除前缀,false代表比如 "/myusers/api/user/add" 转发到 "/myusers/api/user/add" true代表比如 "/myusers/api/user/add" 转发到 "/api/user/add"
  5. zuul.router.{serviceName}.sensitiveHeaders 敏感头,是否允许代理组件处理这些header默认不能处理Cookie,Set-Cookie,Authorization
相关推荐
米羊12135 分钟前
已有安全措施确认(上)
大数据·网络
Ro Jace1 小时前
计算机专业基础教材
java·开发语言
mango_mangojuice1 小时前
Linux学习笔记(make/Makefile)1.23
java·linux·前端·笔记·学习
程序员侠客行1 小时前
Mybatis连接池实现及池化模式
java·后端·架构·mybatis
时艰.1 小时前
Java 并发编程 — 并发容器 + CPU 缓存 + Disruptor
java·开发语言·缓存
丶小鱼丶1 小时前
并发编程之【优雅地结束线程的执行】
java
市场部需要一个软件开发岗位1 小时前
JAVA开发常见安全问题:Cookie 中明文存储用户名、密码
android·java·安全
忆~遂愿1 小时前
GE 引擎进阶:依赖图的原子性管理与异构算子协作调度
java·开发语言·人工智能
MZ_ZXD0012 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
PP东2 小时前
Flowable学习(二)——Flowable概念学习
java·后端·学习·flowable