dbrest v1.1 公测版发布

Posted by Henry on 10-23,2020

亲爱的小伙伴们大家好,作为开博第一弹,dbrest v1.1 公测版 忐忑的重磅发布了。

本系列其他文章

dbrest v1.1公测版发布
dbrest配置说明
dbrestapi调用说明含样例代码
dbrest lua脚本模板
dbrest小试牛刀
dbrest压测结果

dbrest 是什么?

dbrest 是一个数据库的Restful API生成与代理工具,利用dbrest,可以通过简单配置数据库链接,以及要对外发布的表或者视图,分分钟内将您的数据库表发布为Restful的Web API.从而对外提供数据服务。dbrest采用开箱即用的配置方式来替代编写API服务程序,快速实现数据即服务(DAAS)。

dbrest 支持的操作系统

  • linux
  • windows
  • mac os

dbrest 支持的数据库

  • Mysql
  • SQL Server
  • PostgresSql
  • Oracle(定制化发布版本)

dbrest 适合谁来用?

  • 前端开发者

    有了dbrest,无需等服务端开发伙伴写好api然后才能测试调用。自己简单配置
    就可以生成api。小型应用甚至可以直接担当服务器角色部署在生产环境。
  • 后端开发者

    前端催你发布api,直接用dbrest配置后,把调用地址甩给他就ok了
  • 数据库DBA

    企业现有的陈年失修的老旧系统,如何新系统对接?
    dblink?不怕数据库密码暴漏?如果是异构数据库互相调用呢?
    用dbrest 发布成web API。轻松与当前主流数据集成模式接轨,安全性还有保证。

dbrest 快速入门

1,下载dbrest程序以及 配置文件conf.xml
linux版下载 v1.3
windows版下载 v1.3
mac版下载 v1.3

将dbrest与conf.xml放到同一路径下
2,简单修改配置conf.xml
配置http监听端口

<ListenPort>9000</ListenPort>

配置数据库链接

   <DBConfig>
     <Driver>mysql</Driver>
     <Server>127.0.0.1</Server>
     <Port>3306</Port>
     <User>root</User>
     <Password>12345</Password>
     <Database>db1</Database>
   </DBConfig>

配置需要访问的表

   <Tables>
      <!--配置你自己数据库中的表名称-->
      <Table><Name>tab1</Name></Table>
      <Table><Name>students</Name></Table>
      <Table><Name>view1</Name></Table>
   </Tables>

其它节点先忽略无视,待下回分解。
3,启动程序 dbrest
linux: sudo ./dbrest &
windows:界面双击运行或者命令行运行

4,打开浏览器访问您的数据表:
http://127.0.0.1:9000/api/students

查一下姓名叫张三的家伙的信息
http://127.0.0.1:9000/api/students?name=eq.张三

dbrest功能列表

数据表CURD

  • http get 对应 sql select
  • http post 对应 sql insert
  • http patch 对应 sql update
  • http delete 对应 sql delete

表读写权限控制

  • 表匿名查询访问控制
  • 表写入权限控制
  • 表修改权限控制
  • 表删除权限控制
  • 表可以被哪些用户访问

表并发与事务控制

API网关

  • CORS支持
  • IP限流熔断

用户鉴权方式

  • Basic Authorization鉴权方式:基于用户名+密码方式
  • MD5 Authorization鉴权方式(推荐):md5(用户名+时间戳+密码)

用户IP白名单

  • 支持多IP

Lua脚本扩展(v1.1版本新增)

-before after insert
-before after update
-before delete

dbrest详细配置说明

看这里配置说明

感谢

感谢小伙伴们挑灯夜战,996之外的辛苦付出。在此特别感谢Jack,老牛(Sky Niu), 一博,当然还有Henry(我自己),最后忘不了感谢参与公测的每一位。

反馈邮箱:fenghongli@hotmail.com

猛戳此处为我们点赞