欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

前后端分离模式的疑问

程序员文章站 2022-05-29 17:22:30
...

前后端分离模型的疑问

现阶段前后端工作混杂在一起,前端写好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从后台服务器获取。