摘要:向我推荐这个时候,我瞟了一眼它的简介说实话这个介绍让我眼前一亮,想想每次向后端的同学要个接口的时候,他们总是要哼哧哼哧搞个半天给才能我。抱着试试看的心态,我试用了一个疗程,不是,是安装并使用了一下。
github向我推荐这个xmysql时候,我瞟了一眼它的简介One command to generate REST APIs for any MySql Database, 说实话这个介绍让我眼前一亮,想想每次向后端的同学要个接口的时候,他们总是要哼哧哼哧搞个半天给才能我。抱着试试看的心态,我试用了一个疗程,oh不是, 是安装并使用了一下。 说实话,体验是蛮不错的,但是体验一把过后,我想不到这个工具的使用场景,因为你不可能把数据库的所有表都公开出来,让前端随意读写, 但是试试看总是不错的.
1 来吧,冒险一次!安装与使用
npm install -g xmysql xmysql -h localhost -u mysqlUsername -p mysqlPassword -d databaseName 浏览器打开:http://localhost:3000, 应该可以看到一堆json2 特点
产生REST Api从任何mysql 数据库 ??
无论主键,外键,表等的命名规则如何,都提供API ??
支持复合主键 ??
REST API通常使用:CRUD,List,FindOne,Count,Exists,Distinct
批量插入,批量删除,批量读取 ?
关联表
翻页
排序
按字段过滤 ?
行过滤 ?
综合功能
Group By, Having (as query params) ??
Group By, Having (as a separate API) ??
Multiple group by in one API ????
Chart API for numeric column ??????
Auto Chart API - (a gift for lazy while prototyping) ??????
XJOIN - (Supports any number of JOINS) ?????????
Supports views
Prototyping (features available when using local MySql server only)
Run dynamic queries ???
Upload single file
Upload multiple files
Download file
3 API 概览HTTP Type | API URL | Comments |
---|---|---|
GET | / | Gets all REST APIs |
GET | /api/tableName | Lists rows of table |
POST | /api/tableName | Create a new row |
PUT | /api/tableName | Replaces existing row with new row |
POST | /api/tableName/bulk | Create multiple rows - send object array in request body |
GET | /api/tableName/bulk | Lists multiple rows - /api/tableName/bulk?_ids=1,2,3 |
DELETE | /api/tableName/bulk | Deletes multiple rows - /api/tableName/bulk?_ids=1,2,3 |
GET | /api/tableName/:id | Retrieves a row by primary key |
PATCH | /api/tableName/:id | Updates row element by primary key |
DELETE | /api/tableName/:id | Delete a row by primary key |
GET | /api/tableName/findOne | Works as list but gets single record matching criteria |
GET | /api/tableName/count | Count number of rows in a table |
GET | /api/tableName/distinct | Distinct row(s) in table - /api/tableName/distinct?_fields=col1 |
GET | /api/tableName/:id/exists | True or false whether a row exists or not |
GET | /api/parentTable/:id/childTable | Get list of child table rows with parent table foreign key |
GET | /api/tableName/aggregate | Aggregate results of numeric column(s) |
GET | /api/tableName/groupby | Group by results of column(s) |
GET | /api/tableName/ugroupby | Multiple group by results using one call |
GET | /api/tableName/chart | Numeric column distribution based on (min,max,step) or(step array) or (automagic) |
GET | /api/tableName/autochart | Same as Chart but identifies which are numeric column automatically - gift for lazy while prototyping |
GET | /api/xjoin | handles join |
GET | /dynamic | execute dynamic mysql statements with params |
GET | /upload | upload single file |
GET | /uploads | upload multiple files |
GET | /download | download a file |
GET | /api/tableName/describe | describe each table for its columns |
GET | /api/tables | get all tables in database |
项目地址:https://github.com/o1lab/xmysql
";s:4:"tags";a:5:{i:0;s:16:"1040000000090688";i:1;s:16:"1040000006048152";i:2;s:16:"1040000000607648";i:3;s:16:"1040000000089436";i:4;s:16:"1040000000089439";}}
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/92177.html
摘要:现在开始创建一个包并分发给其他人使用,并确保遵循你迄今为止学到的标准和最佳实践。第步实践对于练习,继续编写单元测试,以完成目前为止所做的实际任务,特别是你在步骤中所做的练习。 今天的Web开发与几年前完全不同,有很多不同的东西可以很容易地阻止任何人进入Web开发。这是我们决定制作这些循序渐进的视觉指南的原因之一,这些指南展示了更大的图景,并让任何人清楚了解他们在网页开发中扮演的角色。 ...
摘要:避免我机器上可以运行无论是上一篇介绍的企业部署还是本文的个人用例,都提到了这个情况。如果你用的是,那么我给你一个建议从云主机提供商那儿租用一台云主机我推荐使用系统的云主机。在云服务提供商之间移植大多数的云主机提供商已经全面支持。 在上篇文章 8 个你可能不知道的 Docker 知识 中介绍了 Docker 在生产环境中的用例,有些开发者可能还是不明白 Docker 对自己到底有多...
阅读 3736·2021-10-15 09:42
阅读 2595·2021-09-03 10:50
阅读 1629·2021-09-03 10:28
阅读 1791·2019-08-30 15:54
阅读 2512·2019-08-30 12:46
阅读 403·2019-08-30 11:06
阅读 2820·2019-08-30 10:54
阅读 523·2019-08-29 12:59