Kong 网关 | Route
一、简介
路由用来匹配客户端向上游服务器请求的规则,也就是客户端调用的 API,每个路由(Route)和一个服务(Service) 相关联,一个服务可有有多个路由,我们可以对每一条路由进行细粒度的配置,可以使用正则表达式进行通用的配置。
二、重要属性
创建一个路由需要配置的属性,其中路径 paths 为必须设置,其余为可选。
Attributes | Description |
---|---|
name | 路由名称 |
protocols | 可以请求该路由的协议,默认为 [“http”, “https”] |
methods | 方法,如 GET,POST,DELETE,PATCH,PUT |
hosts | 匹配此路由的域名列表,可设置多个值 |
paths | 匹配此路由的路径,也就是 API,可以设置多个值 |
regex_priority | 路由请求的优先级,数字越大的在数字越小的之前匹配,默认为0 |
strip_path | 当通过一条路径进行请求时,从上游中去掉匹配的前缀,默认为 true,如果上游的路径和配置的请求路径或者前缀一样,配置路由时需要配置为 false。 |
三、操作示例
1、创建路由
POST /services/{service name or id}/routes
curl -i -X POST \--url http://localhost:8001/services/myservice/routes \--data 'hosts[]=gateway.com' \--data 'name=getBlackRoles' \--data 'strip_path=false' \--data 'paths[]=/blackRoles'\--data 'methods[]=GET&methods[]=POST' \
2、查询路由
查询所有路由
GET /routes
curl -i -X GET \--url http://localhost:8001/routes \
查询某个服务的路由
GET /services/{service name or id}/routes
curl -i -X GET \--url http://localhost:8001/services/myservice/routes \
3、搜索路由
根据路由名称或 id 搜索
GET /routes/{route name or id}
curl -i -X GET \--url http://localhost:8001/routes/getBlackRoles \
搜索特定服务的路由
GET /services/{service name or id}/routes/{route name or id}
curl -i -X GET \--url http://localhost:8001/services/myservice/routes/getBlackRoles \
4、更新路由
根据路由 ID 或名称更新路由
PATCH /routes/{route name or id}
curl -i -X PATCH \--url http://localhost:8001/routes/getBlackRoles \--data 'hosts[]=gateway.com' \--data 'name=getBlackRole' \--data 'strip_path=false' \--data 'paths[]=/blackRoles'\--data 'methods[]=GET&methods[]=POST' \
更新指定服务的路由
PATCH /services/{service name or id}/routes/{route name or id}
curl -i -X PATCH \--url http://localhost:8001/services/myservice/routes/getBlackRole \--data 'hosts[]=gateway.com' \--data 'name=getBlackRoles' \--data 'strip_path=false' \--data 'paths[]=/blackRoles'\--data 'methods[]=GET&methods[]=POST' \
5、更新或创建路由
根据路由名称或 ID 更新
PUT /routes/{route name or id}
curl -i -X PUT \--url http://localhost:8001/routes/getBlackRoles \--data 'hosts[]=gateway.com' \--data 'name=getBlackRoles' \--data 'strip_path=false' \--data 'paths[]=/blackRoles'\--data 'methods[]=GET&methods[]=POST' \
更新指定服务的路由
PUT /services/{service name or id}/routes/{route name or id}
curl -i -X PUT \--url http://localhost:8001/services/myservice/routes/getBlackRoles \--data 'hosts[]=gateway.com' \--data 'name=getBlackRoles' \--data 'strip_path=false' \--data 'paths[]=/blackRoles'\--data 'methods[]=GET&methods[]=POST' \
6、删除路由
根据路由ID或名称删除路由
DELETE /routes/{route name or id}
curl -i -X DELETE \--url http://localhost:8001/routes/getBlackRoles \
删除指定服务的路由
DELETE /services/{service name or id}/routes/{route name or id}
curl -i -X DELETE \--url http://localhost:8001/services/myservice/routes/getBlackRoles \
相关资料
Kong官方文档(路由) :https://docs.konghq.com/1.4.x/admin-api/#route-object
公众号:【星尘Pro】
github:https://github.com/huangliangyun
推荐阅读
史上最全,最完美的 JAVA 技术体系思维导图总结,没有之一!
全站导航 | 文章汇总!
Kong 网关 | Route相关推荐
- kong 网关教程入门
全栈工程师开发手册 (作者:栾鹏) 架构系列文章 为什么使用API-Gateway 1. 方便客户端维护-- 每个请求方不用管理多个api url,统一访问api-gateway即可 2. 接口重构时 ...
- 以Docker方式安装和配置Kong网关和Konga控制台
文章目录 以Docker方式安装和配置Kong网关和Konga控制台 前言 安装Kong 创建容器网络 启动PostgreSQL数据库 初始化数据 对Kong Admin API作安全防护 启动Kon ...
- 在K3s上使用Kong网关插件,开启K3s的无限可能!
我的工作中很重要的一部分是参加各种各样的技术会议.最近参加的是去年11月的北美KubeCon,在会议的最后一天,所有人都焦头烂额,我也一直机械地向不同的人重复我的自我介绍.后来,我已经十分烦躁,决定逃 ...
- kong 网关 结合 nacos 动态路由,服务上下线,加载插件
kong 怎么根据nacos的服务自动路由,加载服务呢 先梳理逻辑 kong路由动态控制服务的说明 逻辑说明 核心流程说明: 此服务中存在的冲突及问题 插件的加载 附上部分代码 先梳理逻辑 本文参考: ...
- kong 网关日志格式修改
kong 网关日志格式修改 kong网关默认日志在/usr/local/kong/logs,主要有access.log,admin_access.log,error.log,access.log和ng ...
- centos6.5 安装 kong 网关
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 最近要求了解下kong网关,然后在网上一顿找,说实话,度娘的力量还是不行啊,找出来的那些跟着配置,不 ...
- Kong网关简介安装
转载 李亚飞 大佬的文章:https://www.lyafei.com/ 背景 我们有批设备卖给了海外的服务商,老外请了第三方检测机构,检测设备与我们系统的安全性,结果找到了近 40+ 的安全漏洞,有 ...
- KONG网关 — 介绍安装
网关是微服务中不可或缺的一部分,它承载了所有请求流量入口,参数验证拦截,用户权限验证,但是除了JAVA的spring cloud之外,公共网关屈指可数,其中最受关注的就是KONG了,笔者半年前就已经在 ...
- Kong网关upstream健康检查机制
目录 upstream概念及作用 健康检查 健康检查方式 判定target是否健康 判定upstreams是否健康 两种康检查的区别 启用和禁用健康检查 禁用健康检查 使用总结 upstream概念及 ...
最新文章
- linux 查看目录挂载的ip,Linux挂载IPSAN和FCSAN操作,Linux挂载NFS文件系统
- QSAR生命的发动机卟啉c20h14n4---用反向传导做卟啉的分子模型
- Python中的eval(),exec()以及其相关函数
- Shutdown SpringBoot App
- JavaScript 里变量名前面加了大括号代表什么含义
- python爬取歌曲评论_python 爬取歌曲评论的简单示例
- python实现logistic回归对样本量有要求么_logistic回归样本量多少合适?
- LINUX的简单命令
- scp 覆盖_SCP-002 - “生活”室
- unity animator 动画 结束后保持位移_Unity动画系统详解9:Target Matching是什么?
- 阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_2 请求参数绑定实体类型
- 拯救安卓手机的数据(无法进入系统只能打开recovery)
- 论文中中英文摘要格式怎么写?
- Android VelocityTracker简介
- vue+elementUI实现空格或回车在input内添加小标签的功能
- 为图片添加LOMO效果
- java抢红包_Java 用Redis 实现抢红包功能
- C++ 编程练习——猴子吃桃问题
- android连接和断开蓝牙音箱的问题
- 对拍时如何生成一棵树
热门文章
- 原声js控制浏览器全屏或者退出全屏
- 免费做淘宝TOP Taoapi.com测试平台历程
- springmvc上床多个文件简单记录
- python开发之旅——面向对象【人狗大战】
- Python学习笔记(一)数据类型
- 用计算机答题答案提交后能否改错,中高考电脑阅卷流程曝光!不避开这些“坑”,你就要白白丢分了!...
- python 升级setuptools_PIP无法升级setuptools
- 读书分享:巴菲特推荐的投资书籍《投资最重要的事》
- 中国剩余定理扩展中国剩余定理
- MsBuild.exe的坑