前后端分离的一些问题
目前我们团队正在做前后端分离,前端用vue做,有一些经验上的问题问大家。
比如页面上有个部门的数据,有个列表数据,列表里的部门字段,应该返回部门id,还是返回部门名称?
(返回id,则由前端去组织显示内容;返回名称,则直接显示;)一个页面假如需要请求5个接口,来来回回的请求响应会耽误不少时间;有没有什么技术,一次性请求后端的5个接口,只用消耗一次的等待时间就能拿到5个接口的数据?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
依据题中所言:前后端分离,想必是使用json进行前后端数据交互。
1、我们使用anguar做过SPA,事业单位的一个内部管理系统。遇到过返回部门数据的场景,我们的做法是返回id,在前端依据id,通过哈希表获取数据。
2、一个页面请求多个数据:
疑惑:你说的一次性拿到5个接口数据,然而只花一次请求数据所消耗的时间吗?
(1)浏览器的tab采用单线程来处理javascript,遇到并发请求的时候,是采用异步非阻塞的方式来实现并发的。由于是采用异步非阻塞的方法请求,所以说,这5个请求发送的时间间隔很短,这种情况下,几乎可以认为是同一时刻下发送的。
(2)每一个请求的响应时间都是不固定的。
(3)假设这5个接口的数据没有前后依赖关系的话,设请求响应时间为responseTimeN,其中最短耗时为min,设请求中最长耗时为max,那你等待的时间区间为 [min, max];而不会是responseTime1 + responseTime2 + responseTime3 + responseTime4 + responseTime5。
1.如果这个列表数据会有其他处理的可能,还是返回 ID 比较好
2.没有这个技术,后端一次性返回 5 个接口需要的数据感觉很low啊有木有, 那只能用异步加载咯
直接数据和内容全部返回最保险,因为如果你的页面上涉及到删除等操作,那么就要将这个id传入到后端,否则后端不知道你到底要删除id为几的记录。