springboot整合gateway网关

news2024/12/29 18:56:11

2.3 搭建Gateway

本项目使用Spring Cloud Gateway作为网关,下边创建网关工程。

新建一个网关工程。

工程结构

添加依赖:

XML org.springframework.cloud spring-cloud-starter-gateway com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery com.alibaba.cloud spring-cloud-starter-alibaba-nacos-config org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-logging org.springframework.boot spring-boot-starter-log4j2

配置网关的bootstrap.yaml配置文件

YAML#微服务配置 spring: application: name: gateway cloud: nacos: server-addr: 192.168.101.65:8848 discovery: namespace: ${spring.profiles.active} group: xuecheng-plus-project config: namespace: s p r i n g . p r o f i l e s . a c t i v e g r o u p : x u e c h e n g − p l u s − p r o j e c t f i l e − e x t e n s i o n : y a m l r e f r e s h − e n a b l e d : t r u e s h a r e d − c o n f i g s : − d a t a − i d : l o g g i n g − {spring.profiles.active} group: xuecheng-plus-project file-extension: yaml refresh-enabled: true shared-configs: - data-id: logging- spring.profiles.activegroup:xuechengplusprojectfileextension:yamlrefreshenabled:truesharedconfigs:dataid:logging{spring.profiles.active}.yaml group: xuecheng-plus-common refresh: true profiles: active: dev

在nacos上配置网关路由策略:

详细配置如下:

YAMLserver: port: 63010 # 网关端口 spring: cloud: gateway: # filter: # strip-prefix: # enabled: true routes: # 网关路由配置 - id: content-api # 路由id,自定义,只要唯一即可 # uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址 uri: lb://content-api # 路由的目标地址 lb就是负载均衡,后面跟服务名称 predicates: # 路由断言,也就是判断请求是否符合路由规则的条件 - Path=/content/** # 这个是按照路径匹配,只要以/content/开头就符合要求 # filters: # - StripPrefix=1 - id: system-api # uri: http://127.0.0.1:8081 uri: lb://system-api predicates: - Path=/system/** # filters: # - StripPrefix=1 - id: media-api # uri: http://127.0.0.1:8081 uri: lb://media-api predicates: - Path=/media/** # filters: # - StripPrefix=1

启动网关工程,通过网关工程访问微服务进行测试。

在http-client-env.json中配置网关的地址

使用httpclient测试课程查询 接口,如下:

JSON### 课程查询列表 POST {{gateway_host}}/content/course/list?pageNo=2&pageSize=1 Content-Type: application/json { “auditStatus”: “202002”, “courseName”: “” }

运行,观察是否可以正常访问接口 ,如下所示可以正常请求接口。

JSONhttp://localhost:63010/content/course/list?pageNo=2&pageSize=1 HTTP/1.1 200 OK transfer-encoding: chunked Content-Type: application/json Date: Sun, 11 Sep 2022 09:54:32 GMT { “items”: [ { “id”: 26, “companyId”: 1232141425, “companyName”: null, “name”: “spring cloud实战”, “users”: “所有人”, “tags”: null, “mt”: “1-3”, “mtName”: null, “st”: “1-3-2”, “stName”: null, “grade”: “200003”, “teachmode”: “201001”, “description”: “本课程主要从四个章节进行讲解: 1.微服务架构入门 2.spring cloud 基础入门 3.实战Spring Boot 4.注册中心eureka。”, “pic”: “https://cdn.educba.com/academy/wp-content/uploads/2018/08/Spring-BOOT-Interview-questions.jpg”, “createDate”: “2019-09-04 09:56:19”, “changeDate”: “2021-12-26 22:10:38”, “createPeople”: null, “changePeople”: null, “auditStatus”: “202002”, “status”: “203001”, “coursePubId”: null, “coursePubDate”: null } ], “counts”: 29, “page”: 2, “pageSize”: 1 }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/163962.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TryHackMe-Blog

Blog 比利乔尔(Billy Joel)在他的家用电脑上写了一个博客,并开始工作。这将是非常棒的! 枚举此框并找到隐藏在其上的 2 个标志!比利的笔记本电脑上有一些奇怪的事情。你能四处走动并得到你需要的东西吗?还…

蓝队常用的攻击手段

目录 一, 漏洞利用 1.1 SQL 注入漏洞 1.2 跨站漏洞 1.3 文件上传或下载漏洞 1.4 命令执行漏洞 1.5 敏感信息泄露漏洞 在实战过程中,蓝队专家根据实战攻防演练的任务特点逐渐总结出一套成熟的做法:外网纵向突破重点寻找薄弱点,围绕薄弱点…

2022 VeLO: Training Versatile Learned Optimizers by Scaling Up

VeLO: Training Versatile Learned Optimizers by Scaling Up 通过扩展模型的规模来训练一个通用的优化器。 设计上,优化器的原理基于元学习的思路,即从相关任务上学习经验,来帮助学习目标任务。 相比迁移学习,元学习更强调获取元…

2023年批量下载和改名音频专辑(单页列表)

一、下载原理 1)找到目标音频的专辑网页,这里以 kite runner mp3为例。(需要自己找) https://www.xi___ma___la_____ya.com/album/71718770 2)进入详细页(称为一次请求URL)(不需要…

JUC(java.util.concurrent)的常见类

文章目录一、JUC常见类Callable 接口ReentrantLockSemaphore(信号量)CountDownLatch一、JUC常见类 concurrent代表了并发,这个包下为我们提供了并发编程(多线程)相关的组件. Callable 接口 我们的Callable接口和Runnable是一样的,但也有一些区别: Run…

C/C++实现跨年表白烟花

跨年表白烟花使用c/c实现烟花效果(小白进)分析诉求,拆分问题头文件贯穿全文的媒体部分文字部分:进入烟花弹部分烟花弹的属性初始化烟花弹让烟花弹飞起来烟花爆炸烟花弹的属性初始化烟花让烟花炸起来完成代码:使用c/c实…

840个最优的机器学习python开源项目整理分享

本资源包含了840个很棒的机器学习开源项目,总共270万颗星分为32个类别。所有项目均按项目质量得分排名,该得分是根据从GitHub和不同程序包管理器自动收集的各种指标计算得出的。资源整理自网络,资源获取见源地址:https://github.c…

三星手机提取微信聊天数据

三星手机提取微信聊天数据的方法,无需root。 注意,暴力破解密码需要英伟达显卡,一小时内破解,无显卡可能要两天。 1. 安装USB驱动,通过S换机助手,备份微信软件至电脑。注意,选择不加密。 三星…

[硬核] Bootstrap Blazor Table 综合演示例子

知识点: 1.导入导出 2.分页功能 3.增删改查 4.批量删除 5.批量编辑(审核) 6.列排序与列搜索 7.顶部搜索实现所有列搜索 8.高级搜索实现多条件搜索 9.顶部与刷新与视图列 10.实现文本类型明细行 11.列的统计 12.隐藏列,时间日期列格式化 13.新窗口打开 14.随机数据 15.自由编辑…

DVWA靶机CSRF全难度(未完)

目录 Low难度 medium难度 Cross Site Request Forgery跨站的请求伪造 原理:利用受害者尚未失效的身份认证信息、会话;诱骗其访问黑客设计号的页面,在受害人不知情的情况下以受害人的身份向服务器发送请求完成非法操作 Low难度 源代码 &l…

十二、RabbitMQ 报错汇总

🌻🌻 目录一、报版本过低问题一、报版本过低问题 问题: error: Failed dependencies: libcrypto.so.1.1()(64bit) is needed by erlang-25.1.2-1.el8.x86_64 libcrypto.so.1.1(OPENSSL_1_1_0)(64bit) is needed by erlang-25.1.2-1.el8.x86_…

基于模糊控制的自平衡小车的研究

1、内容简介略635-可以交流、咨询、答疑2、内容说明随着人类文明的发展,传感器技术、计算机应用技术、机械学、微电子技术、通讯技术以及人工智能技术也得到了飞速的发展。进入21世纪后,在机器人学和机器人技术领域,自平衡小车已成为其中的重…

LeetCode 2293. 极大极小游戏

【LetMeFly】2293.极大极小游戏 力扣题目链接:https://leetcode.cn/problems/min-max-game/ 给你一个下标从 0 开始的整数数组 nums ,其长度是 2 的幂。 对 nums 执行下述算法: 设 n 等于 nums 的长度,如果 n 1 ,…

【OpenCV】形态学操作 | 图像平滑 | 边缘检测 | Laplacian算子

Ⅰ. 形态学操作 0x00 腐蚀和膨胀 腐蚀和膨胀是最基本的形态学操作,腐蚀和膨胀都是针对白色部分(高亮部分)而言的。 膨胀就是使图像中的高亮部分扩张,效果图拥有比原图更大的高亮区域;腐蚀是原图中的高亮区域被蚕食&…

C语言文件补充笔记2:VS查看定义、文件章节涉及到的函数

1 VS查看函数的定义与库的原码 (1)查看库函数的定义 右击要查看的函数,然后“转到定义” 这里就跳转到了定义的所在文件 在右上角关闭相关文件 (2) 查看库原码 将鼠标放到导入的库中,然后右击&#…

给数组创建复制(深拷贝)给数组创建复制(深拷贝)

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 数组的深拷贝、浅拷贝、引用拷贝 修改原数组不会影响复制后的数组 numpy.copy() [太阳]选择题 对于以下python代码最后输出的结果是? import numpy as np print("【执行】a np.arang…

awesome平铺窗口使用笔记

这个故事要从vim开始。从入了vim的坑以后,就爱上了平铺窗口模式。在macOS中就开始使用yabai。使用了yabai以后,就很大程序可以用键盘完成大部分操作了。然后我开始用linux,使用的是i3wm。感觉非常不错,几乎就与vim中的窗口管理差不…

[Android Studio] 如何查看Android Studio的版本信息

🟧🟨🟩🟦🟪 Android Debug🟧🟨🟩🟦🟪 Topic 发布安卓学习过程中遇到问题解决过程,希望我的解决方案可以对小伙伴们有帮助。 📋笔记目…

命令行批量 PDF 转换器:2PDF 2.0.8x Crack

命令行 PDF 转换器 2PDF 是一个专业的命令行实用程序,用于以批处理模式将办公文档和图像转换为 PDF。2PDF 基于命令行界面和语法,通过简单的标准命令提供对批量转换为 PDF 的完全控制。 从 Windows 命令提示符将文档和图像转换为 PDF 2PDF 可以将 PDF 和…

面试官问我微服务注册中心如何保证数据强一致性?头秃了。。。

目录 1、再回顾:什么是服务注册中心?2、Consul服务注册中心的整体架构3、Consul如何通过Raft协议实现强一致性?4、Consul如何通过Agent实现分布式健康检查? 1、再回顾:什么是服务注册中心? 先回顾一下什么…