如何使用Spring Cloud Gateway实现一个最简单的API网关示例

  1. 创建第一个SpringBoot应用作为网关服务
json 复制代码
# 服务器端口
server.port=8080

# Spring Cloud Gateway 配置
spring.cloud.gateway.routes[0].id=demo1
spring.cloud.gateway.routes[0].uri=http://localhost:8081
spring.cloud.gateway.routes[0].predicates[0]=Path=/demo1

spring.cloud.gateway.routes[1].id=demo2
spring.cloud.gateway.routes[1].uri=http://localhost:8082
spring.cloud.gateway.routes[1].predicates[0]=Path=/demo2
xml 复制代码
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
  1. 创建第二个SpringBoot应用作为后端应用

    server.port=8081

xml 复制代码
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
	<version>3.3.5</version>
</dependency>
<dependency>
	<groupId>org.mybatis.spring.boot</groupId>
	<artifactId>mybatis-spring-boot-starter</artifactId>
	<version>3.0.3</version>
</dependency>
java 复制代码
@RestController
@RequestMapping("/demo1")
public class Demo1Controller {
    @GetMapping()
    public String getInfo() {
        return "demo1 service is running";
    }
}
  1. Demo2同理,只是端口为8082
  2. 访问http://localhost:8080/demo1或者http://localhost:8080/demo2即可完成网关转发
相关推荐
超级大只老咪4 小时前
数组相邻元素比较的循环条件(Java竞赛考点)
java
小浣熊熊熊熊熊熊熊丶4 小时前
《Effective Java》第25条:限制源文件为单个顶级类
java·开发语言·effective java
毕设源码-钟学长4 小时前
【开题答辩全过程】以 公交管理系统为例,包含答辩的问题和答案
java·eclipse
啃火龙果的兔子4 小时前
JDK 安装配置
java·开发语言
星哥说事4 小时前
应用程序监控:Java 与 Web 应用的实践
java·开发语言
派大鑫wink4 小时前
【JAVA学习日志】SpringBoot 参数配置:从基础到实战,解锁灵活配置新姿势
java·spring boot·后端
xUxIAOrUIII5 小时前
【Spring Boot】控制器Controller方法
java·spring boot·后端
Dolphin_Home5 小时前
从理论到实战:图结构在仓库关联业务中的落地(小白→中级,附完整代码)
java·spring boot·后端·spring cloud·database·广度优先·图搜索算法
醇氧5 小时前
org.jetbrains.annotations的@Nullable 学习
java·开发语言·学习·intellij-idea
Java&Develop5 小时前
Aes加密 GCM java
java·开发语言·python