【Gateway网关】
立小言先森
这个作者很懒,什么都没留下…
展开
-
Connection prematurely closed BEFORE response reactor.netty.http.client.PrematureCloseException: Co
一、最近在开发网关系统,就在感觉万事大吉可以上线的时候发现了如下的错误(这个是我在配置rabbitmq访问多个服务时发现的) Connection prematurely closed BEFORE responsereactor.netty.http.client.PrematureCloseException: Connection prematurely closed BEFORE responsereactor.core.publisher.FluxOnAssembly$OnAssemblyE原创 2021-03-03 19:24:11 · 17878 阅读 · 14 评论 -
SpringCloud Gateway如何设置keep-alive
- 短连接:请求-响应模式中发起请求时建立连接,响应后直接断开连接;- 长连接:第一次发起请求后连接不断开,接下来的请求可以复用这个连接;- HTTP1.0:当前协议版本中keep-alive默认是关闭的,需要在请求头中添加"Connection:Keep-Alive",才能启用Keep-Alive;- Http1.1:当前协议浏览器发起的默认都是Keep-Alive连接请求,默认的时间可以有客户端设置,也可以由服务端设置;原创 2022-09-03 13:58:45 · 3469 阅读 · 0 评论 -
NettyWebServer开启http端口并实现http自动跳转https
1.定义配置文件类package com.emily.cloud.gateway.config;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.boot.web.server.Shutdown;/** * @program: EmilyGateway * @description: Netty服务器配置 * @create: 2021/原创 2021-01-15 18:22:50 · 1438 阅读 · 0 评论 -
死磕源码系列【springcloud gateway网关缓存请求body及删除缓存body之AdaptCachedBodyGlobalFilter和RemoveCachedBodyFilter过滤器】
RemoveCachedBodyFilter和AdaptCachedBodyGlobalFilter是两个全局过滤器,在网关过滤器链中RemoveCachedBodyFilter优先级最高,AdaptCachedBodyGlobalFilter次之,所以每次请求发送过来先将网关上线文中的请求body删除,然后再从请求中获取body缓存到网关上线文,属性是CACHED_REQUEST_BODY_ATTR(cachedRequestBody),这样就可以直接从网关上下文中拿到请求参数,而不会出现从reques.原创 2021-01-15 19:44:33 · 6447 阅读 · 4 评论 -
springboot服务url包含特殊字符包含path中问题(gateway特殊字符)
我们使用springboot开发接口提供给端上时,url路径或者参数中都可能包含特殊未编码的字符,报400 bad request,导致请求无法正常处理。原创 2022-07-16 13:18:24 · 4236 阅读 · 0 评论 -
gateway断言工厂Path,Weight
一、Path路由断言工厂路由断言工厂类有两个参数,patterns(基于spring的PathMatcher)、matchTrailingSlash(是否匹配斜杠,默认:true)spring: cloud: gateway: routes: - id: path_route uri: https://example.org predicates: - Path=/red/{segment},/blue/{segme原创 2022-05-07 18:09:33 · 1727 阅读 · 0 评论 -
Gateway网关异常处理
Gateway网关异常处理一、webflux框架全局异常处理通过实现ErrorWebExceptionHandler接口,重写handle方法,替换掉框架默认的异常处理实现类DefaultErrorWebExceptionHandlerpublic class GatewayErrorWebExceptionHandler implements ErrorWebExceptionHandler { /** * 处理给定的异常 * @param exchange原创 2022-05-07 18:07:38 · 6816 阅读 · 0 评论