2019年1月14日

sqler sql 转rest api 源码解析(四)macro 的执行

摘要: macro 说明 macro 是sqler 的核心,当前的处理流程为授权处理,数据校验,依赖执行(include),聚合处理,数据转换 处理,sql 执行以及sql 参数绑定 授权处理 这个是通过golang 的js 包处理的,通过将golang 的http 请求暴露为js 的fetch 方法,放在 阅读全文

posted @ 2019-01-14 19:09 荣锋亮 阅读(562) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 源码解析(三) rest协议

摘要: rest 服务说明 rest 协议主要是将配置文件中的宏暴露为rest 接口,使用了labstack/echo web 框架,同时基于context 模型 进行宏管理对象的共享,同时进行了一些中间件的注册 cors RemoveTrailingSlash gzip Recover rest 启动 中 阅读全文

posted @ 2019-01-14 17:38 荣锋亮 阅读(690) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 源码解析(二) resp 协议

摘要: resp 协议主要是方便使用redis 客户端进行连接,resp 主要是依赖 tidwall/redcon golang redis 协议包 resp 服务说明 server_resp.go 文件,干的事情比较简单,就是redis command 的支持,包含了几个内置的 ping select h 阅读全文

posted @ 2019-01-14 17:24 荣锋亮 阅读(512) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 源码解析(一)应用的启动入口

摘要: sqler sql 转rest api 的源码还是比较简单的,没有比较复杂的设计,大部分都是基于开源 模块实现的。 说明: 当前的版本为2.0,代码使用go mod 进行包管理,如果本地运行注意golang 版本,我使用docker 运行, 参考 https://github.com/rongfen 阅读全文

posted @ 2019-01-14 16:44 荣锋亮 阅读(596) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 2.0 试用

摘要: sqler 的迭代还是很快的,已经2.0 了,2.0 有好多新功能的添加,同时也有好多不兼容的修改 说明: 测试使用docker-compose,同时我已经push 了docker 镜像 dalongrong/sqler 发布说明 添加 aggregate 移除 authorizers hooks 阅读全文

posted @ 2019-01-14 10:47 荣锋亮 阅读(724) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 数据聚合操作

摘要: sqler 2.0 提供了一个新的指令aggregate,注意这个和sql 的聚合函数不是一个概念,这个只是为了 方便api数据的拼接 参考格式 databases { exec = "SHOW DATABASES" ​ transformer = <<JS // there is a global 阅读全文

posted @ 2019-01-14 10:10 荣锋亮 阅读(893) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 数据校验的处理

摘要: 早期版本(2.0 之前)使用rules 进行数据校验处理,2.0 之后进行了修改使用 validators,这样更加明确 参考格式 addpost { // if any rule returns false, // SQLer will return 422 code, with invalid 阅读全文

posted @ 2019-01-14 10:08 荣锋亮 阅读(259) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 防止sql 注入

摘要: sqler 对于sql Sanitization 的处理,我们可以使用bind 指令 说明: 这个是2.0 的功能,注意版本的使用 参考格式 addpost { // $input is a global variable holds all request inputs, // including 阅读全文

posted @ 2019-01-14 10:04 荣锋亮 阅读(533) 评论(0) 推荐(0) 编辑

sqler sql 转rest api 授权处理

摘要: 我们可以使用内置的authorizer 以及js 脚本,方便的进行api 接口的授权处理 说明: 这个是2.0 的功能,注意版本的使用 参考格式 addpost { authorizer = <<JS (function(){ // $input is a global variable holds 阅读全文

posted @ 2019-01-14 09:55 荣锋亮 阅读(352) 评论(0) 推荐(0) 编辑

导航