首页 > 其他分享 >微服务 Gateway 网关——全局过滤器

微服务 Gateway 网关——全局过滤器

时间:2023-11-22 22:33:42浏览次数:30  
标签:网关 return chain exchange request 参数 过滤器 Gateway

 

代码步骤:

 ① 网关模块里 创建一个类并实现 GlobalFilter 接口

 

 

@Order(-1) //值越小,优先级越高。也可以实现Ordered接口指定优先级
@Component //注入到 Spring 容器
public class AuthorizeFilter implements GlobalFilter {
@Override
public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
//1.获取请求参数
ServerHttpRequest request = exchange.getRequest();//拿到 request 对象
MultiValueMap<String, String> params = request.getQueryParams(); //key:参数名称 value:对应的值

//2.获取参数中的 authorization 参数
String auth = params.getFirst("authorization");

//3.判断参数值是否等于 admin,相等就放行,不相等就拦截
if ("admin".equals(auth)) {//放行
return chain.filter(exchange);
} else {//拦截
//设置状态码,让用户看起来更友好
exchange.getResponse().setStatusCode(HttpStatus.UNAUTHORIZED);

return exchange.getResponse().setComplete();
}
}
}


 

标签:网关,return,chain,exchange,request,参数,过滤器,Gateway
From: https://www.cnblogs.com/gagaya2/p/17850508.html

相关文章

  • 微服务 路由的过滤器配置
        ......
  • 微服务 Gateway 网关——路由断言工厂
    路由断言工厂RoutePredicateFactory我们在配置文件中写的断言规则只是字符串,这些字符串会被 PredicateFactory读取并处理,转变为路由判断的条件  ......
  • 微服务 Gateway 网关的创建步骤
     网关本身也是微服务,也需要把自己注册到Nacos或从Nacos中拉取服务 一个服务要想启动,得需要main函数,所以弄一个application:   这些配置是让网关能够联系上Nacos,实现网关服务的注册,以及服务发现 然后是路由配置:  server:port:10010spring:applicat......
  • 基于go-zero的api网关示例
    以下是基于go-zero框架的API网关示例。这个示例包括一个简单的API网关,它接收HTTP请求,将请求路由到不同的服务,并返回响应。创建项目首先,在go-zero仓库中创建一个新的目录:mkdirapi-gatewaycdapi-gateway创建Go文件在api-gateway目录下创建以下三个文件:c......
  • Modbus转Profinet网关与流量变送器通讯博图配置
    Modbus转Profinet网关与流量变送器兼容转ModbusTCP协议博图配置首先,我们需要明确电磁流量计的通信协议是Modbus,而西门子1200PLC的通信协议是Profinet。这两种协议在功能和特性上存在一定的差异,因此需要使用兴达易控Modbus转Profinet网关设备进行转换。兴达易控的XD-MDPN100是Prof......
  • Modbus转Profinet--TS-180 网关连接西门子 PLC 和工业称重仪表
    项目随着科技的高速发展,工业自动化行业对日益多样的称重需求越来越高,上海某公司在国内的一个工业自动化项目中,监控中心系统需要远程实时采集工业称重仪表测量的各种称重参数。该系统使用的是西门子S7-300PLC,支持PROFINET以太网协议,工业称重仪表为该公司生产的称重显示控制......
  • ModbusTCP 转 Profinet 主站网关在博图配置案例
    ModbusTCP转Profinet主站网关在博图配置案例兴达易控ModbusTCP转Profinet网关,在Profinet侧做为Profinet主站控制器,接Profinet设备,如伺服驱动器;兴达易控ModbusTCP和Profinet网关在ModbusTCP侧做为ModbusTCP从站,接PLC、上位机、wincc屏等。拓扑图下面是兴达易......
  • PLC通过Modbus转profinet网关读取并控制恒压供水系统中的变频器频率
    PLC通过Modbus转profinet网关读取并控制恒压供水系统中的变频器频率PLC通过Modbus转Profinet网关(XD-MDPN100)在恒压供水系统中读取变频器的频率。该系统实时监控逆变器的频率,以确保水的供应能够保持恒定的压力。PLC通过Modbus与变频器通信,将读取的频率数据转换为profinet协议,使......
  • Modbus转Profinet 网关
    产品简介实现PROFINET网络与串口网络之间的数据通信,三个串口可分别连接具有RS232或RS485接口的设备到PROFINET网络。即将串口设备转换为PROFINET设备。 产品特点通过PROFINET一致性测试,支持RT和IRTPROFINET端最大输入1440字节,输出1440字节RS-485接口......
  • Modbus转Profinet 网关 TS-180
     产品简介实现PROFINET网络与串口网络之间的数据通信,三个串口可分别连接具有RS232或RS485接口的设备到PROFINET网络。即将串口设备转换为PROFINET设备。产品特点通过PROFINET一致性测试,支持RT和IRTPROFINET端最大输入1440字节,输出1440字节RS-485接口......