SpringCloud-Zuul(三):常用配置详解

SpringCloud-Zuul(三):常用配置详解_第1张图片

本文原创地址,我的博客:https://jsbintask.cn/2019/04/11/springcloud/springcloud-zuul-config/(食用效果最佳),转载请注明出处!

SpringCloud Zuul同系列文章:
SpringCloud-Zuul(一):技术选型及请求流程源码走读
SpringCloud-Zuul(二):自定义Filter及内部路由源码解析
SpringCloud-Zuul(三):常用配置详解

前言

SpringCloud-Zuul的配置都较为简单,介绍下spring-cloud-zuul常用配置.

配置详情

  1. 配置开启网关代理。
    在启动类上加上注解@EnableZuulProxy即可。
  2. 配置微服务路由转发
zuul:
  prefix: /api
  routes:
    a:
      path: /a/**
      service-id: service-a

    b:
      path: /b/**
      service-id: service-b

service-id为微服务在注册中心的名称。 prefix为访问所有api都需要加上的前缀。a,b为每个服务的映射(可以随便写),例如现在a服务有一个controller: /user/{userId},那么经过网关映射后的全路径为:/api/a/user/{userId},这相当于给所有服务的api添加了别名,方便管理!
3. 路由转发超时配置
zuul的默认路由转发超时时间只有2s,因为它内部使用ribbon作负载均衡处理,所以我们需要配置ribbon的超时时间:

ribbon:
  ReadTimeout: 5000
  SocketTimeout: 5000
  1. 敏感头配置
    zuul默认过滤了所有的http header,这代表被代理的微服务将没有任何请求头,我们需要添加如下配置:
zuul:
  sensitive-headers:

sensitive-headers表示要被过滤的头,为空则可放行所有请求头。
5. 过滤返回的请求头
有时候我们需要把被代理的微服务返回的请求头过滤掉(例如跨域在网关添加了,如果各微服务也添加了也将造成跨域失败,所以我们需要过滤掉):

zuul:
  ignored-headers:
    - Access-Control-Allow-Origin
    - Access-Control-Allow-Methods
    - Access-Control-Allow-Headers
    - Access-Control-Allow-Credentials
    - Access-Control-Max-Age

关注我,这里只有干货!

你可能感兴趣的:(java,springcloud)