OpenSource - 一站式API服务

在这里插入图片描述


概述

Crabc是低代码开发平台,企业级API发布管理系统,采用SpringBoot、JWT、Mybatis等框架和SPI插件机制实现。

  • 支持接入(mysql、oracle、postgresql、sqlserver、elasticsearch、mongodb)等SQL或/NOSQL数据源, 在编辑框内编写好SQL后即可快速生成Rest接口对外提供服务

  • 支持Mybatis中if等标签语法、数据转换、参数取值、 以及复杂的多SQL执行并支持事务, 减少通用接口的SQL编写,让开发人员专注更复杂的业务逻辑实现

  • 可通过插件的 方式扩展支持其他的数据源, 提供多种权限认证、限流熔断、缓存、监控等提供一站式API服务功能。


功能

  • Hub:可在首页查看公开发布的接口,查询详情和申请访问
  • 接口开发:通过编写SQL的方式即可快速的对外发布成一个Rest接口,支持多SQL同时执行,采用Mybatis标签语法,SQL支持#、$和@等,关联、分页和在线预览。
  • 数据源管理:支持多种SQL/NoSQL数据库接入,数据库新增、编辑、测试链接和删除等。
  • 个人中心:用户管理,密码修改。
  • 应用列表:Code认证和签名认证的应用创建管理以及对API调用在线授权。
  • 接口管理:查看开发中和已发布的API接口,可进行上下线管理,编辑升级等
  • 接口日志:查看发布的接口被调用日志列表和请求详情。
  • 监控统计:可视化查看发布的API被调用统计和监控。
  • 流控规则:限流、缓存、熔断、告警等。
  • 申请审批:可申请Hub中公开的API和审批别人申请调用自己发布的接口

模块

cn.crabc    
├── crabc-gateway            // 网关服务(开发中)
├── crabc-auth               // 授权服务(开发中)
├── crabc-boot               // 业务模块
│     └── crabc-admin        // 后台管理
│           └── static       // 前端静态页面 [9377]
│     └── crabc-datasource   // 数据源加载模块
│     └── crabc-api          // API调用执行模块
│     └── crabc-spi          // 插件定义模块
│     └── crabc-plugin       // 插件中心
├── crabc-common             // 公共模块
├── db                       // SQL脚本
├──pom.xml                   // 依赖

运行启动

1、先执行db/dml.sql脚本,创建库表和初始化数据
2、在编辑工具中运行启动 crabc-admin/ AdminApplication.java

访问地址:http://127.0.0.1:9377 账号密码:admin/admin123

Docker启动

> docker pull crabc/crabc-admin:latest
> docker run -p 9377:9377 --env db_url=jdbc连接(如:jdbc:mysql://localhost:3306/crabc) --env db_user=数据库用户 --env db_pwd=数据库密码 -d --name crabc-admin crabc/crabc-admin:latest

在这里插入图片描述


功能预览

首页

在这里插入图片描述

接口开发

在这里插入图片描述

在这里插入图片描述

接口属性

在这里插入图片描述

在这里插入图片描述

请求参数

在这里插入图片描述

在线预览

在这里插入图片描述

应用创建

在这里插入图片描述

接口列表

在这里插入图片描述

数据库类型

在这里插入图片描述

限流熔断

在这里插入图片描述

在这里插入图片描述

接口申请

在这里插入图片描述

申请审批

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/yangshangwei/article/details/132104555