首页 > 其他分享 >微服务网关搭建

微服务网关搭建

时间:2023-07-03 16:57:31浏览次数:69  
标签:网关 服务 exchange spring springframework public cloud 搭建

依赖

       <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

启动类

@SpringBootApplication
@EnableEurekaClient
public class GatewayApplication {
    public static void main(String[] args) {
        SpringApplication.run(GatewayApplication.class, args);
    }
}

application.yml 文件

spring:
  application:
    name: sysgateway
  cloud:
    gateway:
      routes:
      - id: goods
        uri: lb://goods
        predicates:
        - Path=/goods/**
        filters:
        - StripPrefix= 1
      - id: system
        uri: lb://system
        predicates:
        - Path=/system/**
        filters:
        - StripPrefix= 1
server:
  port: 9101
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:6868/eureka
  instance:
    prefer-ip-address: true

微服务网关跨域

      globalcors:
        cors-configurations:
          '[/**]': # 匹配所有请求
            allowedOrigins: "*" #跨域处理 允许所有的域
            allowedMethods: # 支持的方法
            - GET
            - POST
            - PUT
            - DELETE

微服务网关过滤器

@Component
public class IpFilter implements GlobalFilter, Ordered {
​
    @Override
    public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
​
        System.out.println("经过第1个过滤器IpFilter");
        ServerHttpRequest request = exchange.getRequest();
        InetSocketAddress remoteAddress = request.getRemoteAddress();
        System.out.println("ip:"+remoteAddress.getHostName());
        return chain.filter(exchange);
    }
​
    @Override
    public int getOrder() {
        return 1;
    }
}

 

标签:网关,服务,exchange,spring,springframework,public,cloud,搭建
From: https://www.cnblogs.com/Rover20230226/p/17523273.html

相关文章

  • 目前除了站长还有哪些人在使用服务器呢?
    目前除了站长还有哪些人在使用服务器呢?站长只是网站管理人的统称。能用到服务器的人群很多也很杂,在此就大致的给大家分享下主要是这几类人群:1、个人用户。个人用户使用的服务器配置都比较低,基本上以VPS和云服务器为主。大部分都是存放个人博客网页,或者个人搭建小型网站,还一些初学程......
  • 华为超聚变2288H V5 服务器安装Windows系统后 PCI数据捕获和信号处理控制器 出现感叹
    2288Hv5服务器安装Windows系统后,PCI数据捕获和信号处理控制器出现感叹号可以在IBMC界面的“诊断-黑匣子”关闭黑匣子功能,然后重启设备解决也可以通过在操作系统侧安装IBMA软件解决2288Hv5服务器安装Windows系统后,PCI数据捕获和信号处理控制器 出现感......
  • 手游服务器选择标准 选择手游服务器要考虑哪些问题
    手游服务器通常分为物理服务器、云主机两种类型,大家可以选择购买或者是租用。下面驰网多多就给大家介绍手游服务器选择标准,选择手游服务器要考虑哪些问题?选择手游服务器要考虑哪些问题1、根据企业的需求选择合适的线路国内常用的线路是电信线路和网通线路,其中河南以及河南以......
  • 统信UOS国产服务器操作系统(UOS Server 20-1060e)安装使用体验
    总体来说,UOS系统的安装还是很简明的。需要注意的是后期的驱动安装和其他各方面的使用细节。以下是具体安装过程:(感谢统信软件河北团队的大力支持。)特别感谢统信的郭赞、喵喵喵、Zero等各位大神的帮助。一、安装部分1、进入安装界面后,您自己很明确的请根据自己需求修改。2、“......
  • linux搭建LAMP环境
    LAMP环境指在linux系统下搭建Apache服务器+mysql+php(1)安装Apache服务及其扩展包yum-yinstallhttpdhttpd-manualmod_sslmod_perlmod_auth_mysql(2)启动Apache服务systemctlstarthttpd.service(3)安装mysql  wgethttp://dev.mysql.com/get/mysql57-community-release......
  • windows安装nginx服务
    https://www.cnblogs.com/lizhenfeng/p/17109915.htmlhttps://blog.csdn.net/qgbihc/article/details/121805661安装服务xxServer.exeinstall......
  • pgsql 搭建
    1.yum安装yuminstall-yhttps://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpmyuminstall-ypostgresql12-server2.启动pgsql/usr/pgsql-12/bin/postgresql-12-setupinitdbsystemctlenablepostgresql-12system......
  • Profinet转EtherNet/IP网关连接AB PLC的应用案例
     西门子S7-1500PLC(profinet)与ABPLC以太网通讯(EtherNet/IP)。本文主要介绍捷米特JM-EIP-PN的Profinet转EtherNet/IP网关,连接西门子S7-1500PLC与ABPLC通讯的配置过程,供大家参考。 1,新建工程:运行RSLogix5000程序,选择菜单File->New,弹出对话框:2,在“Type”中选择控......
  • kubesphere 搭建redis
    一、我们用docker搭建redis时的命令是:dockerrun-d-p6379:6379--restart=always\-v/mydata/redis/conf/redis.conf:/etc/redis/redis.conf\-v/mydata/redis-01/data:/data\--nameredis-01redis:6.2.5\redis-server/etc/redis/redis.conf从中分析出来,我......
  • VM VirtualBox + CentOS 7 本地化部署yapi服务
    一、安装OracleVMVirtualBoxVirtualBox下载地址:https://www.virtualbox.org/wiki/Downloads按需选择系统版本安装,安装完成后启动。安装VirtualBox插件,双击下载文件即可安装二、创建CentOS虚拟机选择无界面版本,下载地址:http://mirrors.jlu.edu.cn/centos/7.9.......