为前端准备通用的增删改查的数据接口,大家有没有好的思路

2019-09-18 10:20:11 +08:00
 daijinming

我考虑重写一套通用的 [增删改查的数据接口] ,这样就可以不用费劲再开发这样简单的 CRUD 接口来,不知道大家能不能谈谈各家的思路,借鉴一下

10401 次点击
所在节点    程序员
106 条回复
Mogugugugu
2019-09-18 10:21:40 +08:00
graphql 了解一下?
gz911122
2019-09-18 10:25:10 +08:00
graphql 吧
daijinming
2019-09-18 10:28:57 +08:00
@Mogugugugu
@gz911122 最近学习了下 graphql ,我还整理来网站 https://graphql.im ,不过这个需要在后台定义 Schema,还是要写逻辑填充数据,只是入口唯一了,接口调用规范了。不能实现通用的 CRUD,我正考虑使用这个 graphql 写套通用的 CRUD
StarkWhite
2019-09-18 10:30:47 +08:00
facebook 的 graphql + 1
StarkWhite
2019-09-18 10:31:11 +08:00
顺便问下,那个人来推广 apijson 了吗?
StarkWhite
2019-09-18 10:33:49 +08:00
@daijinming 可以接 prisma,这样就省掉 CRUD 的代码了
daijinming
2019-09-18 10:35:21 +08:00
@StarkWhite 我觉得 apijson 有很多借鉴的地方,非常通用,当时我考虑前台标准和 graphql 不兼容,所以不考虑全盘采用
wysnylc
2019-09-18 10:38:26 +08:00
允许我笑一会哈哈哈哈哈哈哈哈哈
fxyswh
2019-09-18 10:39:11 +08:00
不知道大家对通用的增删改查接口怎么理解。比如说是接口地址、请求操作、请求返回统一还是其它的情况?
Caballarii
2019-09-18 10:40:48 +08:00
把你所有表的增删改查全部放给前端就通用了
arischow
2019-09-18 10:40:48 +08:00
请定义通用
daijinming
2019-09-18 10:41:25 +08:00
@fxyswh
@arischow 1、Insert 新增
2、Update 更新
3、Get 查询一条记录
4、Delete 删除一条记录
5、List 分页查询列表
6、List_Params 分页查询列表,可自定字段匹配
7、List_DateParams 分页查询列表,可自定字段匹配,可按照日期过滤
8、List_DateKeywordParams 分页查询列表,可自定字段匹配,可按照日期过滤,关键字查询
9、List_CODE 查询 CODE 表记录,返回数组
10、List_InParams 分页查询列表,可进行范围查询
11、UpdateDouble 更新两个表

这是我之前写的通用接口,就是 CRUD 相关的
daijinming
2019-09-18 10:43:02 +08:00
当然,参考 apijson 中,对操作的表的范围,操作的类型(比如允许查,不允许查询)可以进行一些限制
chinvo
2019-09-18 10:44:13 +08:00
你把这些开放给前端,安全性怎么办
daijinming
2019-09-18 10:45:55 +08:00
@chinvo 开放的都是基础表单、采用 JWT 验证用户角色
agee
2019-09-18 10:51:34 +08:00
airfling
2019-09-18 10:52:07 +08:00
spring data jpa rest,只需要设计好模型和 hibernate 的映射就可以了。会自动映射一些简单的资源接口
daijinming
2019-09-18 10:53:52 +08:00
@agee
@airfling 有没有 dotnet 或 dotnet core 的资源
airfling
2019-09-18 10:55:40 +08:00
没用过.net 不了解
agee
2019-09-18 10:58:48 +08:00
没用过不了解

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/601728

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX