dgate基于 Vert.x 的 API gateway
dgate 是基于 Vertx 的 API Gateway。运行 dgate 的命令如下:
java -jar dgate-version-fat.jar -Dconf=conf
其中的 conf 属性用来指定运行所需的配置文件。
conf的文件格式
dgate采用ConfigSlurper解析conf文件,因此其文件的语法实际上是Groovy语法。
conf文件由多个Api Gateway的定义组成,对于每个Gateway定义如下:
apiGatewayName { port //端口 login //后端login服务的url,其值为urls中的一个url urls { URL配置(UrlConfig)列表 } //dgate暴露的url列表 }
对于每个URL配置,其结构如下:
url { required //必需参数列表 methods //支持的HTTP Method upstreamURLs { 上游URL列表(UpStreamURL) } expected //期望返回值 }
其中:
-
required支持两种格式:List和Map。前者适用于不区分HttpMethod时的参数验证,后者则可以针对不同的HttpMethod分别进行设置。
-
List,如:required = ["sub", "password"]
-
Map,如:required = [get: ['param1'], post: ['param2'], delete: ['param3']]
-
-
expected和upStreamURLs两个属性不能并存
-
expected主要用于mock模式,其目的是为了便于依赖dgate的访问层可以自行mock所需的响应,使得它们的开发进度受dgate开发进度的影响最小化。
-
对于expected的内容:
-
statusCode和payload至少有一个
-
或针对具体的HTTP METHOD的返回值
-
-
对于每个上游URL,有3个属性:host、port和url,其中url必需以"/"开始
评论
Gravitee API 网关基于 Vert.X 开发的高性能接口网关
GraviteeAPI网关是基于Vert.X开发的高性能接口网关,支持Swagger导入接口、文档管理、性能分析、操作审计、日志,负载均衡等功能。主要功能特性RESTAPI:通过WebUI执行的每个操
Gravitee API 网关基于 Vert.X 开发的高性能接口网关
0
Gravitee API 网关基于 Vert.X 开发的高性能接口网关
Gravitee API 网关是基于 Vert.X 开发的高性能接口网关,支持 Swagger 导入
Gravitee API 网关基于 Vert.X 开发的高性能接口网关
0
基于Twirp RPC的简易JSON Api Gateway实现
Twirp 是 Twichtv 2018 年开源的一套极简 RPC 框架,当时官方的介绍文章 Twirp: a sweet new RPC framework for Go。功能上比不上大名鼎鼎的 grpc,但是胜在小巧灵活,兼容 Go 原生的 http.Handler,可以与现有的任...
GoCN
0
Orange基于 OpenResty 的 API 网关
Orange是一个基于OpenResty的API Gateway,提供API及自定义规则的监控和管理
Orange基于 OpenResty 的 API 网关
0
Surge基于 Accelerate 框架的 API
Surge是一个基于Accelerate框架和C语言开发,用于进行矩阵运算、数学信号处理和图像处理的
Surge基于 Accelerate 框架的 API
0
Surge基于 Accelerate 框架的 API
Surge是一个基于Accelerate框架和C语言开发,用于进行矩阵运算、数学信号处理和图像处理的API。换句话说,就是可以非常快速的处理数学、语音和图像信号。代码示例:用法计算总和[Double]
Surge基于 Accelerate 框架的 API
0
WSIF基于 WSDL 文件的 API
WSIF提供了一组简单的API来调用web服务而不需要了解该web服务的实现方式,更深入的说,WSIF是一组基于WSDL文件的API,他调用可以用WSDL文件描述的任何服务。WSIF中提供的API允许
WSIF基于 WSDL 文件的 API
0