我怎么感觉 RESTful API 方式做的前后端分离网站,到最后越来越乱了?

2017-09-13 11:13:52 +08:00
 coolair
接口越来越多,返回的 json 乱七八糟、千奇百怪,文档越写越后,感觉还不如传统的方式来的实在、痛快、清晰、明了。
4601 次点击
所在节点    问与答
16 条回复
doublleft
2017-09-13 11:25:31 +08:00
当然会混乱,我觉得考虑用 RESTful 要看合作的前后端同学素质,能不能严格按照文档执行。
SuperMild
2017-09-13 11:54:42 +08:00
返回的 json 乱七八糟不能怪 RESTful 吧
shoaly
2017-09-13 12:25:09 +08:00
你说的对. 所以 我个人是反对 为了分离而分离的....
额外提取出接口, 会增加前后端沟通的繁琐工作, app 是没办法才用 json, 没看见大部分 app 也在用 webview 的方式来做展示逻辑么, 这也算抛弃了 json 接口模式转向"后端直出流"
duan602728596
2017-09-13 19:56:22 +08:00
RESTful 一生黑。做的项目,接口全部都是 RESTful 风格的,已经被坑怕了。
1、数据没有过滤,存进去啥,取的就是啥,没有数据库字典,数据结构混乱,写了一堆容错。调整数据结构十分不便。
2、取数据麻烦,有些数据需要查好几个表,前端需要发好几次请求。
3、某些业务流程,调用的接口更多,我写的最多的一个流程调用了 6 个接口,发送了 6 次请求。
4、某些本该后端来算的工作被加到前端来算了,比如某些字段是递增的唯一字段(xxx-1 这种),居然要前端来计算。

最后,Promise 大法好,async 大法好,要不然,前端就不只是发发牢骚了。
Tyanboot
2017-09-13 22:57:21 +08:00
@duan602728596 你说的这么多基本都只能怪你的后端接口设计有问题...不能说明 RESTFUL 有问题.
BenX
2017-09-14 08:49:51 +08:00
@duan602728596 请把你们做 restful API 的后端开发拖出去斩了,搞前后端分离后 API 怎么用好,前端说了算。
RorschachZZZ
2017-09-14 12:58:07 +08:00
@duan602728596 数据校验后端不做吗。。。。
duan602728596
2017-09-15 00:01:34 +08:00
@Tyanboot 没办法,拿着通用接口做业务,而且接口那头还不是我们公司的
duan602728596
2017-09-15 00:06:21 +08:00
@BenX 用的都是通用接口,所有的业务逻辑全部在前端
duan602728596
2017-09-15 00:11:10 +08:00
@RorschachZZZ 没有校验,接口都是通用接口,业务逻辑全部在前端
BenX
2017-09-15 00:37:28 +08:00
@duan602728596 显然不合理,大量业务逻辑放后端啊,前端要足够轻薄才能更好变更啊。粗暴的说就是,前端 SB 到完全 API 的数据驱动,做好前端的酷炫才是重点。
duan602728596
2017-09-15 08:27:46 +08:00
@BenX 所以被那个项目惨了,里面大量的业务逻辑,没有注释,而且业务还总变。我已经跳出坑了,同事还在坑里
RorschachZZZ
2017-09-15 09:06:31 +08:00
@duan602728596 业务逻辑为啥在前端。。。API 方式必须要对所有回传数据校验,不校验有人搞事就 GG 了。
duan602728596
2017-09-15 13:53:47 +08:00
@RorschachZZZ 因为后端只是负责搞通用型的数据存储平台,只有增删改查的接口。所以业务逻辑就全在前端了
shangfabao
2017-09-15 14:46:37 +08:00
@duan602728596 前端更多应该是效果展示和简单数据校验啊,你们这是把用户手机当服务器使啊,“物联网啊”
duan602728596
2017-09-15 19:02:43 +08:00
@shangfabao 不是手机,是管理平台

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

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

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

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

© 2021 V2EX