前后端分离模式的疑问
前后端分离模型的疑问
现阶段前后端工作混杂在一起,前端写好demo交给后台渲染数据,一旦出现bug,调试起来费时费力,所以,急需前后端进行分离工作,在网上搜了好久,一般就是SPA模式和node模式
SPA模式用跨域请求来解决数据获取问题。但不利于做SEO优化。
所以我看了下基于NODE的分离模型:
不知道这种模式是否正确,如果有其他好的解决方案,请评论告知我,多谢各位大大了!
回复内容:
前后端分离模型的疑问
现阶段前后端工作混杂在一起,前端写好demo交给后台渲染数据,一旦出现bug,调试起来费时费力,所以,急需前后端进行分离工作,在网上搜了好久,一般就是SPA模式和node模式
SPA模式用跨域请求来解决数据获取问题。但不利于做SEO优化。
所以我看了下基于NODE的分离模型:
不知道这种模式是否正确,如果有其他好的解决方案,请评论告知我,多谢各位大大了!
大致三种:
1.前端维护页面模板,负责开发;发布时推送到后端,后端部署运维。比如vm,有个velocityjs可以在node端完成编译填数展示,前端完全可以本地完成页面开发。和后端耦合部分为页面渲染数据,提前约定,确定数据格式,本地mock即可;
2.spa,不一定是跨域的,页面维护在后端,一个统一的壳,后端只管维护一下不同页面引用的js即可,js往页面里面塞东西,数据当然都是客户端异步完成的。至于seo可以用phantomjs抓好页面另存,然后ng配置来应付爬虫。这个方案其实比较大的问题是页面进来之后初始是没有展示的,也就是白屏时间会比较长,而是要执行js,异步获取数据之后才有展示,这个问题比较多。当然在app等环节下面可以使用离线包或者缓存优化这个体验,比较常见;
3.node,我认为你的图画的没有什么问题,只不过php那部分有各种各样的实现,java,node等等都行,至于json无非就是减少前后端耦合,能够提前确定,不要变,并行开发就可以了。node的引入无非就是让前端能直接提供页面供访问。但是如果前端单独每次写一个node页面渲染,也是比较大的开发成本。然后就有了同构的思想,比如reactjs的同构,node提供一个router而已,其他的页面处理服务器端和客户端完全保持一致。
个人拙见,希望有点帮助
我们基本上都是后台负责提供JSON或者JSONP数据,前端拿到数据之后进行数据展示、渲染,没有发现什么问题啊。不知道题主所说的:一旦出现bug,调试起来费时费力,没有太看懂有什么大的问题
所有数据都是由后台负责,前端负责页面的实现,数据可以通过ajax从后台服务器获取。
推荐阅读
-
javascript - 请教一下关于前后端分离的一些疑问
-
MySQL master/slave 模式的读写分离为什么会提高性能?
-
SpringBoot+Vue.js实现前后端分离的文件上传功能
-
SpringBoot+Vue.js实现前后端分离的文件上传功能
-
一个Java程序猿眼中的前后端分离以及Vue.js入门(推荐)
-
spring boot+vue 的前后端分离与合并方案实例详解
-
详解.net core webapi 前后端开发分离后的配置和部署
-
一个Java程序猿眼中的前后端分离以及Vue.js入门(推荐)
-
详解.net core webapi 前后端开发分离后的配置和部署
-
python如何使用正则表达式的前向、后向搜索及前向搜索否定模式详解