没有合适的资源?快使用搜索试试~ 我知道了~
某小公司RESTful、共用接口、前后端分离、接口约定的实践.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 47 浏览量
2023-12-03
11:37:11
上传
评论
收藏 274KB DOCX 举报
温馨提示
![preview](https://dl-preview.csdnimg.cn/88592948/0001-794fa950acb2f009accba78ee5585f41_thumbnail-wide.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
试读
11页
前后端分离你究竟懂多少,分享干货,来自工作实战总结,经验之谈,少走弯路少踩坑
资源推荐
资源详情
资源评论
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![bas](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/release/download_crawler_static/88592948/bg1.jpg)
某小公司RESTful、共用接口、前后端分离、接口约定的实践
前
言
随着互联网高速发展,公司对项目开发周期不断缩短,我们面对各种需求,使用原有对接方式,各端已经很难快速应对各种需求,
更难以提高效率。于是,我们不得不重新制定对接规范、开发逻辑以便快速上线项目。
我们的目标
尽可能的缩小沟通的成本,开最少的会,确定大部分的事。
花最少的时间写文档,保证90%的开发人员看懂所有内容。
哪怕不看文档,也能知道各种接口逻辑。
不重复写代码
尽可能的写高可读性的代码
我们做了哪些事
完成了前后端分离
Android、ios、web共用一套接口
统一接口规范(post、put、get、patch、delete)
统一了调试工具
统一了接口文档
之前的我们
接
口
是这样
子
的:
![](https://csdnimg.cn/release/download_crawler_static/88592948/bg2.jpg)
1
{"message":"success","code":0,"data":具体内容}
1
[{"a":"1","b":"1"},{"a":"1","b":"1"},{"a":"1","b":"1"},
客户端请求是这样的:
…/project/model1/getProducts?id=1&a=2&b=3&c=4&d=5…………
A门面->B门面(携带n个变量)->C门面(携带m个变量,包含i个A门面的变量)经常n>4
大部分请求是POST,至于put、patch、delete是什么⻤,关我屁事。
关于接口入参使用json,那完全是看开发心情。
出参是这样的:
其中data里包含数组可能是:
{"a":"1","b":"1"}]即使下一个门面用到也不会使用id,而是把所有字段都传进去。A接口中,返回产品用product;B接口中使用
good,多个接口很可能不统一。
客
户
端对接是这样
子
的:
安卓、ios一套;部分接口各自用一套;html5端一套。
客户端和后台是不停交流的
接
口文
档是这样的
![](https://csdnimg.cn/release/download_crawler_static/88592948/bg3.jpg)
…/Aproject/model1/getProducts ----------接�
…/Aproject/model1/Products.html
-------⻚
�
…/Aproject/model1/Products.js ----------静态资源
swagger
阿里的rap
Word文档
其它
当然了,我觉得swagger和rap神器都是非常强大的,能够实现各种功能逻辑,但是考虑到开发人员掌握程度不通,复杂度较
高,难以提高效率,我决定初期并不使用这两样神器。
后端是这样的
接口和静态资源缠在一块,毕竟很多门面可能是一位开发人员同时开发前端、后端,这里的弊端是,只需要自己清楚逻辑,很多做
法临时应付,方案并不优雅,别人也很难看懂。一旦这位同事离职,很多说不清的逻辑就留给后人采坑了。
重构
下面步入正题,面对以上众多问题聊聊我是如何重新制定流程的
数据库约定
约定数据库里所有表必须包含名为id主键字段。可能有人会说,正常来说不是每张表里都应该有id主键吗?但是,我们项目中由于之
前开发不严谨,部分表没有id主键,或者不为id的主键。这里我们采用分布式的全球唯一码来作为id。
api出参约定
约定所有出参里含list,且其他请求会用到这组list,则list里所有对象必须含id唯一标识。
入
参约定
约定token身份认证统一传入参数模式,后端采用aop切面编程识别用户身份。其他参数一律为json。
resultfull接
口
约定
剩余10页未读,继续阅读
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/7386ab88f5ce450e8817b9541ae085eb_caryxp.jpg!1)
小小哭包
- 粉丝: 1906
- 资源: 3968
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)