当前位置: 首页 > news >正文

【2025版】SpringCloud Gateway网关快速入门

文章目录

  • 一、认识网关
  • 二、快速入门
    • 1. 引入依赖
    • 2. 配置yml
    • 3. 测试

一、认识网关

前端请求不能直接访问微服务,而是要请求网关:

  • 网关可以做安全控制,也就是登录身份校验,校验通过才放行
  • 通过认证后,网关再根据请求判断应该访问哪个微服务,将请求转发过去
    在这里插入图片描述

二、快速入门

1. 引入依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.12</version><relativePath/></parent><groupId>com.paran</groupId><artifactId>gateway_demo</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><!-- ===== 核心依赖 ===== --><!--网关--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!--openFeign--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency><!--负载均衡器--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-loadbalancer</artifactId></dependency><!--OK http 的依赖 --><dependency><groupId>io.github.openfeign</groupId><artifactId>feign-okhttp</artifactId></dependency></dependencies><dependencyManagement><dependencies><!-- Spring Cloud 版本管理 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>2021.0.3</version> <!-- 与 Alibaba 版本匹配 --><type>pom</type><scope>import</scope></dependency><!-- Spring Cloud Alibaba 版本管理 --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2021.0.4.0</version> <!-- 根据实际版本调整 --><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement></project>

2. 配置yml

主要是yml里的路由规则配置,这里只是简单演示,还有路由过滤器可以配置,需要用到的时候再找资料

server:port: 8090  # 服务端口spring:application:name: gateway-service  # 服务名(Nacos 中唯一标识)cloud:nacos:discovery:server-addr: localhost:8848  # Nacos 地址gateway:routes:- id: order-service # 路由规则id,自定义,唯一uri: lb://order-service # 路由的目标服务,lb代表负载均衡,会从注册中心拉取服务列表predicates: # 路由断言,判断当前请求是否符合当前规则,符合则路由到目标服务- Path=/order/** # 这里是以请求路径作为判断规则
feign:okhttp:enabled: true # 开启OKHttp功能
logging:level:com.paran: DEBUG

3. 测试

向8090端口发送请求,最终也能正确路由到提供order-service的某个端口上
在这里插入图片描述

相关文章:

  • 系统启动时开启选择内核菜单
  • 【内存分配】
  • Python 向量化操作如何实现多条件筛选
  • 双列集合——HashMap,LinkedHashMap,TreeMap基本介绍
  • 聚类算法K-means和Dbscan的对比
  • React Native打包报错: Task :react-native-picker:verifyReleaseResources FAILE
  • 《Python星球日记》 第88天:ChatGPT 与 LangChain
  • 心理学层次结构
  • java中的Servlet2.x详解
  • 基于LabVIEW的双音多频系统设计
  • 【PINN】DeepXDE学习训练营(27)——pinn_forward-diffusion_1d_resample.py
  • 游戏:英雄联盟游戏开发代码(谢苏)
  • c++从入门到精通(六)--特殊工具与技术-完结篇
  • leetcode hot100刷题日记——1.两数之和
  • 中文分词与数据可视化03
  • restTemplate
  • 深入解析Spring Boot与Spring Cloud在微服务架构中的实践
  • 什么是dom?作用是什么
  • FreeRTOS的学习记录(临界区保护,调度器挂起与恢复)
  • 利用Shp裁剪nc数据
  • 前四月国家铁路发送货物12.99亿吨,同比增长3.6%
  • 肖钢:一季度证券业金融科技投资强度在金融各子行业中居首
  • 以色列在加沙发起新一轮强攻,同步与哈马斯展开“无条件谈判”
  • 浙江演艺集团7部作品组团来沪,今夏开启首届上海演出季
  • 定制基因编辑疗法治愈罕见遗传病患儿
  • 会谈时间迟迟未定、核心议题存在分歧,俄乌“土耳其谈判”一波三折