微服务Kong(三)——添加一个API
在开始前,请确保您已经安装了KONG服务,并且已经启动了KONG服务。
在本节中,您可以学习到:如何在KONG层添加一个API。这是您使用KONG来管理您的API的第一步。对于此篇教程,我们将使用 http://www.baidu.com 来测试KONG。
KONG在 8001 端口上提供了一个 RESTful 形式的管理API,用于管理您的Kong实例或群集的配置。
1. 通过管理员添加您的API:
通过以下cURL来添加您的第一个API(http://www.baidu.com):
$ curl -i -X POST \
--url http://localhost:8001/apis/ \
--data 'name=example-api' \
--data 'hosts=example.com' \
--data 'upstream_url=http://www.baidu.com'
2. 确认您的API已经添加到KONG里了:
通过以上的操作,您将会看到以下的返回信息:
HTTP/1.1 Created
Content-Type: application/json
Connection: keep-alive {
"created_at": ,
"hosts": [
"example.com"
],
"http_if_terminated": true,
"https_only": false,
"id": "6378122c-a0a1-438d-a5c6-efabae9fb969",
"name": "example-api",
"preserve_host": false,
"retries": ,
"strip_uri": true,
"upstream_connect_timeout": ,
"upstream_read_timeout": ,
"upstream_send_timeout": ,
"upstream_url": "http://httpbin.org"
}
现在,KONG里已经添加了您的API并做好了代理的准备。
3. 通过Kong转发您的请求:
发出以下cURL请求以验证Kong是否将请求正确的转发到了您的API。请注意,默认情况下,Kong是在 8000 端口上处理代理请求的:
$ curl -i -X GET \
--url http://localhost:8000/ \
--header 'Host: example.com'
一个成功的相应,意味着KONG已经将(http://localhost:8000)请求转发到了我们在第一步中配置的 upstream_url 里,并将response转发给我们了。
KONG通过上述请求中,定义的URL头来做到这一点:
- Host: <given host>
微服务Kong(三)——添加一个API的更多相关文章
- 微服务Kong(八)——代理参考
Kong侦听四个端口的请求,默认情况是: 8000:此端口是Kong用来监听来自客户端的HTTP请求的,并将此请求转发到您的上游服务.这也是本教程中最主要用到的端口. 8443:此端口是Kong监听H ...
- 关于微服务、SOA、以及API的理解
现在微服务.SOA.RESTful API设计等在各大公司很流行.微服务(micro services)这个概念不是新概念,很多公司已经在实践了,例如亚马逊.Google.FaceBook,Aliba ...
- 微服务Kong(五)——添加一个用户(Consumer)
在本节中,我们将学习如何添加一个用户(consumer)到KONG实例中.用户是与使用您的API的个人相关联,可用于跟踪,访问管理等. NOTE:本节假设您已经正确启用了密钥验证插件.如果没有,请参考 ...
- 微服务Kong(四)——添加插件
在本节中,您将学习到,如何配置使用KONG的插件来管理您的API.KONG的核心原则之一就是通过插件来实现API的扩展.插件可以使您更为简单的扩展和管理您的API. 在以下的步骤中,您将通过配置key ...
- Re:从 0 开始的微服务架构--(三)微服务架构 API 的开发与治理--转
原文来自:聊聊架构公众号 前面的文章中有说到微服务的通信方式,Martin Folwer 先生在他对微服务的定义中也提到“每个服务运行在其独立的进程中,服务与服务间采用 轻量级的通信机制 互相协作(通 ...
- (8)学习笔记 ) ASP.NET CORE微服务 Micro-Service ---- Ocelot网关(Api GateWay)
说到现在现有微服务的几点不足: 1) 对于在微服务体系中.和 Consul 通讯的微服务来讲,使用服务名即可访问.但是对于手 机.web 端等外部访问者仍然需要和 N 多服务器交互,需要记忆他们的服务 ...
- 微服务Kong(十)——负载均衡参考
KONG为请求多个后端服务提供了多种负载均衡方案:一种是简单的基于DNS,另一种是更加动态的环形均衡器,他在不需要DNS服务器的情况下也允许服务注册. 一.基于DNS的负载均衡 当使用基于DNS的负载 ...
- 微服务Kong(九)——认证参考
客户端访问上游API服务,通常由Kong的认证插件及其配置参数来控制. 通用认证 一般情况下,上游API服务都需要客户端有身份认证,且不允许错误的认证或无认证的请求通过.认证插件可以实现这一需求.这些 ...
- .NET Core 中的 Swagger 应用与微服务场景下的Swagger Api 集成显示
Swagger 与 OpenAPI 的历史来源: Swagger 项目于 2015 年捐赠给 OpenAPI Initiative,此后被称为 OpenAPI.这两个名称可以互换使用.但是," ...
随机推荐
- Python学习-11.Python中的类定义
Python是一门面向对象语言,那么作为面向对象的特征——类也是有的.值得注意的是Python中一切皆对象,并不像C#中为了性能考虑,int这些在Python中也是对象.(C#中int是结构体) 如何 ...
- Intellij IDEA如何在一个窗口同时打开多个Maven项目
建立父目录,比如fatherProject,并将多个项目放入该父目录fatherProject下 File-Open...打开父目录fatherProject 引入pom.xml,打开Maven Pr ...
- Replication--备份初始化需要还原备份么?
测试场景:发布服务器:SQLVM6\SQL2订阅服务器:SQLVM5\SQL2分发服务器:SQLVM3\SQL2发布数据库:RepDB2订阅数据库:RepDB2发布:RepDB2_TB1 测试步骤:1 ...
- makefile文件。批处理文件。
makefile文件: NAME=XXX #要编译的文件名 OBJS=$(NAME).obj #指定输出的目标文件名 ML_FLAG=/C /COF ...
- JVM垃圾收集器(1)
此文已由作者赵计刚薪授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 说明:垃圾回收算法是理论,垃圾收集器是回收算法的实现,关于回收算法,见<第四章 JVM垃圾回收算法& ...
- iOS 画图基础
基础要点: 1,画图不可以在 ViewController 里,而是应该在一个 UIView 的子类中,比如新建一个 DrawView 继承自 UIView. 2,覆盖 UIView 的 drawRe ...
- linux 使用内存作为 /tmp 临时文件夹
方法一:cat /etc/fstabtmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0 方法二:mount tmpfs /tmp -t tmpfs -o s ...
- GO学习笔记 - 包内首字母大写的名称是被导出的,才能被其它包代码调用!
在GO语言的任意包内,如果名称的首字母是大写的,意味着这个名称被导出,在其它包中可以使用“包名.名称”方式来调用,如果名称首字母不是大写,那么只能在这个包内部使用!这个概念还真是和以往接触的编程语言的 ...
- Java50道经典习题-程序16 在控制台上打印九九乘法表
题目:输出9*9口诀.分析:利用双重for循环进行输出,分行与列考虑,共9行9列,i控制行,j控制列. public class Prog16 { public static void main(St ...
- Java新手学习路线
转自网络 分享个JAVA学习路线[新手可以参考看下]觉得不好的,大家可以提出来我补充. 第一阶段 技术名称 技术内容 J2SE(java基础部分) java开发前奏 计算机基本原理,Jav ...