如何使用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 小时前
别再只当调包侠了:用 Spring AI 落地 Function Calling,我被大模型硬生生砸出了三个大坑
java
程序员晓琪5 小时前
约定大于配置:基于 Java 包名自动生成 API 版本路由的最佳实践
java·spring boot·后端
Flittly5 小时前
【AgentScope Java新手村系列】(11)中断与恢复
java·spring boot·spring
众少成多积小致巨5 小时前
JNI (Java Native Interface) 技术手册中文参考指南
android·java·c++
东坡白菜6 小时前
破局全栈:前端开发的Java入门实战记录—JPA(2)
java·后端
SimonKing12 小时前
艹,维护AI写的代码,我心态崩了......
java·后端·程序员
用户2986985301412 小时前
Java Word 文档样式进阶:段落与文本背景色设置完全指南
java·后端
小bo波1 天前
从"任意文件复制"深挖Java I/O:字符流与字节流的本质抉择
java·nio·io流·后端开发·文件复制
nanxun8862 天前
记一次诡异的 Docker 容器"串包"故障排查
java
用户1563068103512 天前
Day01 | Java 基础(Java SE)
java