推荐开源项目: db-to-api
去发现同类优质开源项目:https://gitcode.com/
-
- 将数据库中的数据转换为API接口的工具
-
开源许可: MIT License
-
开发语言: Python
-
主要功能:
- 将多种类型的数据库(包括MySQL、PostgreSQL、MongoDB等)中的数据转换为RESTful API接口;
- 支持自定义路由、分页、过滤、排序等功能;
- 提供了简单的前端页面,可以方便地查看和测试API。
-
特点:
- 简单易用:只需要通过命令行配置文件即可快速搭建API服务;
- 高度可定制化:支持自定义路由、分页、过滤、排序等功能,可以根据需要实现复杂的业务逻辑;
- 多种数据库支持:目前支持MySQL、PostgreSQL、MongoDB等多种数据库,后续还将增加更多的数据库类型;
- 前后端分离:提供了一个简单的前端页面,可以方便地查看和测试API。
使用场景
- 快速搭建API服务:如果你有一个数据库,并且想要将其数据转换为API接口,那么db-to-api可以帮助您快速搭建API服务。
- 数据共享:如果你想将公司的内部数据与其他团队或合作伙伴分享,但是又不想开放整个数据库权限,那么你可以使用db-to-api将数据转换为API接口,并通过API进行数据共享。
- 基于数据库的应用开发:如果你想开发一个基于数据库的应用程序,但是又不希望在应用程序中直接操作数据库,那么你可以使用db-to-api将数据库中的数据转换为API接口,并在应用程序中调用这些接口进行数据操作。
安装与使用
- 安装
pip install git+https://git.code.oa.com/project-open-data/db-to-api.git@master
- 创建配置文件
# example config file
{
"database": {
"type": "mysql",
"host": "localhost",
"port": 3306,
"username": "root",
"password": "password",
"database": "test"
},
"routes": [
{
"route": "/users",
"table": "users"
}
]
}
- 运行服务
python -m db_to_api -c path/to/config/file.json
- 查看API文档
访问 http://localhost:5000/docs
即可查看API文档。
示例
以下是一个简单的示例,展示了如何使用db-to-api将MySQL中的数据转换为API接口:
- 准备数据库
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255),
age INT,
gender ENUM('male', 'female')
);
INSERT INTO users (name, age, gender)
VALUES ('Alice', 25, 'female'), ('Bob', 30, 'male');
- 创建配置文件
{
"database": {
"type": "mysql",
"host": "localhost",
"port": 3306,
"username": "root",
"password": "password",
"database": "test"
},
"routes": [
{
"route": "/users",
"table": "users"
}
]
}
- 运行服务
python -m db_to_api -c path/to/config/file.json
- 测试API
访问 http://localhost:5000/api/users/
可以看到如下结果:
[
{"id": 1, "name": "Alice", "age": 25, "gender": "female"},
{"id": 2, "name": "Bob", "age": 30, "gender": "male"}
]
通过访问 http://localhost:5000/api/users/1
可以获取单个用户的详细信息:
{"id": 1, "name": "Alice", "age": 25, "gender": "female"}
通过访问 http://localhost:5000/api/users/?filter[name]=Alice
可以查询名字为Alice的用户:
[{"id": 1, "name": "Alice", "age": 25, "gender": "female"}]
更多细节,请参考项目主页的文档说明:https://git.code.oa.com/project-open-data/db-to-api?utm_source=artical_gitcode
去发现同类优质开源项目:https://gitcode.com/