java - 前后端分离,使用了nodejs之后,项目的响应流程发生了哪些变化?
天蓬老师
天蓬老师 2017-04-18 10:04:04
[Java讨论组]

突然有个问题:自从大多数公司,开始使用前后端分离的技术。

  • 前后端没有分离之前,页面发XHR请求,XHR请求到服务端,请求数据或者逻辑处理之后,返回给浏览器端,流程结束。浏览器端页面有些需要渲染的,可以直接用velocity,放入一个map对象,就可以渲染出来。如常见的修改操作,首先需要获取信息,然后做出更改。这样非常方便。

  • 前后端分离之后,页面发xhr请求,首先到达前端nodejs这一层,nodejs再转发到后端,后端处理之后再返回。这样真的好么?

使用了前后端分离,加入了nodejs之后,一般公司的项目架构是什么样的?从浏览器端的用户的一次click,到整个业务流程走完,整个流向是如何的???

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(2)
PHP中文网

确实没必要迷信所谓的前后端完全分离。前后端分不分离的区别就在于模版页面是由哪边渲染,数据由哪边插入。另外nodejs难道不是服务器的技术吗?和前后端分离没有关系吧。转发到后端是浏览器执行js的时候转发的,那个最多只能叫v8,并不是nodejs。
如果前后端完全分离的话,我觉得用React+Redux比较容易实现,大概过程是这样的。

  • 用户click一个React Component

  • Redux处理这个action,向服务器请求数据

  • 服务器返回数据,Redux改变这个React Component的状态

  • React根据状态渲染这个React Component

  • 用户看到回应

迷茫

前后端分离,我理解是服务器端只输出数据(一般是JSON格式),不在输出JSP等模板页面;所有的请求从html页面发起,通过ajax的方式获取数据,然后在浏览器中通过DOM操作确定最终展现页面。

这个方式下,不一定就必须使用NodeJS。
除非项目工程较大,有专职的前端开发人员,且需要前端开发完全能够和后端开发平行引入开展。使用NodeJS最大的意义就是前端开发完全自主了,后端提供的接口没数据可以先mock一个,不影响前端开发和调试。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号