dgate 基于 Vert.x 的 API gateway开源项目

我要开发同款
匿名用户2016年11月13日
54阅读
开发技术Java
所属分类Web应用开发、网站API
授权协议Apache

作品详情

dgate是基于Vertx的APIGateway。运行dgate的命令如下:

java -jar dgate-version-fat.jar -Dconf=conf

 

其中的conf属性用来指定运行所需的配置文件。

conf的文件格式

dgate采用ConfigSlurper解析conf文件,因此其文件的语法实际上是Groovy语法。

conf文件由多个ApiGateway的定义组成,对于每个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至少有一个

或针对具体的HTTPMETHOD的返回值

对于每个上游URL,有3个属性:host、port和url,其中url必需以"/"开始

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论