当前位置: 首页 > 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的某个端口上
在这里插入图片描述

http://www.dtcms.com/a/198439.html

相关文章:

  • 系统启动时开启选择内核菜单
  • 【内存分配】
  • 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数据
  • 十一、STM32入门学习之FREERTOS移植
  • 最新缺陷检测模型:EPSC-YOLO(YOLOV9改进)
  • RabbitMQ 工作模式(上)
  • LabVIEW汽车CAN总线检测系统开发
  • SpringBoot(一)--- Maven基础
  • [人月神话_6] 另外一面 | 一页流程图 | 没有银弹
  • 游戏引擎学习第292天:实现蛇
  • Java文件读写程序
  • 提示工程 - 系统提示(System Prompts)
  • 健康生活:养生实用指南