Zeros Tech Zeros Tech
首页
架构
大数据
数据库
  • 面试

    • Java面试
    • 大数据面试
    • 架构面试
语言
运维
关于
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

迹_Jason

全栈工程师
首页
架构
大数据
数据库
  • 面试

    • Java面试
    • 大数据面试
    • 架构面试
语言
运维
关于
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 技术选型

    • 前端
    • 测试
    • 权限
  • SpringCloud

  • 单元测试

  • 微服务

  • 架构
  • SpringCloud
迹_Jason
2021-12-17

SpringGateway

# Read First

https://www.cnblogs.com/crazymakercircle/p/11704077.html#autoid-h3-11-1-0

https://docs.spring.io/spring-cloud-gateway/docs/current/reference/html/#configuration-properties

网关配置 (opens new window)

# 跨域

spring:
  cloud:
    gateway:
      filter:
        remove-hop-by-hop: # 在调用目标服务的时候,移除配置的 header 信息。
          headers:
            - access-control-allow-credentials
            - access-control-allow-headers
            - access-control-allow-methods
            - access-control-allow-origin
            - access-control-max-age
      globalcors: # 跨域问题解决
        add-to-simple-url-handler-mapping: true
        cors-configurations:
          '[/**]':
            allowCredentials: true
            allowedOriginPatterns: "*"
            allowedHeaders: "*"
            allowedMethods: "*"
            maxAge: 3628800
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

https://blog.csdn.net/kwame211/article/details/107514290

测试跨域方式

// 在谷歌浏览器的 console 窗口下
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://127.0.0.1:7757/test/app');
xhr.send(null);
xhr.onload = function(e) {
    var xhr = e.target;
    console.log(xhr.responseText);
}
1
2
3
4
5
6
7
8

# Route

优先级

使用 order 配置项,order代表的优先级是从小往大排序的,即数值越小,优先级越高。

RoutePredicateHandlerMapping
DiscoveryClientRouteDefinitionLocator
RouteDefinitionLocator # 获取具体路由信息
RoutePredicateHandlerMapping =》RouteLocator=》RouteDefinitionLocator

PathRoutePredicateFactory

AbstractErrorWebExceptionHandler 异常情况
1
2
3
4
5
6
7
8

路由定义定位器 RouteDefinitionLocator (opens new window)

路由定位器 RouteLocator (opens new window)

路由谓词工厂 RoutePredicateFactory (opens new window)

路由谓词工厂WeightRoutePredicateFactory (opens new window)

网关过滤器 GatewayFilter (opens new window)

网关过滤器工厂 GatewayFilterFactory (opens new window)

全局过滤器GlobalFilter (opens new window)

# Filter

核心处理类

  • FilteringWebHandler 为 Filter 执行处理类,关注 filter、loadFilters 和 handle 两个方法。

优先级

在配置filter时,网关根据排序进行优先级的,第一个order为1,第二个order为2,如此规律进行。

AnnotationAwareOrderComparator # 比较排序
1
编辑 (opens new window)
上次更新: 2021/12/17, 16:15:07
最近更新
01
权限
12-17
02
Spock
12-17
03
分布式事务
12-17
更多文章>
Theme by Vdoing | Copyright © 2021-2021 迹_Jason | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×