1. 前后端分离

1.1 什么是前后端分离

前端:即客户端,负责渲染用户显示界面【如web的js动态渲染页面,安卓,iOS,pc客户端等】

后端:即服务端,负责接收HTTP请求,处理数据

API:Application Programming Interface 是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。 在django中就是url。这个url对应的数据,前端需要数据就发送url,后端根据这个url返回结构化数据(如json)。

前后端分离 完整过程

1. 前端通过HTTP请求API
2. 后端以json形式返回前端需要的数据
3. 前端生成用户显示界面【如html,ios,android】

判断前后端分离的核心标准:

谁生成显示页面

1. 后端生成【前后端未分离】例:flask->render_template  django->render(html)
2. 前端生成【前后端分离】

1.2 前后端分离的优点

  1. 各司其职,更专注于解决一个方向的问题

    前端:视觉层面,兼容性,前端性能优化

    后端:并发,可用性,性能

    并发(大量的请求过来会不会产生资源资源竞争的问题,一个大量的并发问题都在于资源竞争)

  2. 解耦

    前端和后端均易于扩展

  3. 后端灵活搭配各类前端-如安卓等

  4. 提高用户体验

  5. 前端+后端可完全并行开发,加快开发速率

1.3 分离常见问题

问题 答案
如何解决HTTP无状态?(HTTP是无状态协议,不会记住你是否之前访问过这个网站,不使用cookie和session) 采用token(面向计算型的一种方式,去解决状态问题)(无论是客户端还是iOS,android)
如果前端为js,如何解决跨域问题?(ip,端口,协议一项不同就是跨域) 采用CORS跨域方案。全称叫跨站资源共享
如何解决csrf问题?(没有cookie) 采用token
Single Page WebApplication(前端非常牛,spa应用,单页面应用,整个过程全拿js做跳转,体验贼好,全是异步刷新)是否会影响Search Engine Optimization(seo搜索引擎优化)效果 会,前后端分离后,往往页面不存在静态文字【如新闻的详细内容】
“老板,这个逻辑到底是上前端做还是后端做啊” (有些功能前后端都可以实现) 底线原则:数据校验需要前后端都做
“老板,前端工作压力太大了啊” 团队协作不能只是嘴上说说
动静分离和前后端分离是一个意思吗? 动静分离指的是:css/js/img这类静态资源跟服务器拆开部署。典型方案:静态资源交由CDN(内容网络分发,就近返回)厂商处理(蓝汛 网宿 阿里CDN)

1.4 具体实现方式

  1. Django/Flask 后端只返回json
  2. 前端-> ex:js向服务器发出ajax请求,获取数据,拿到数据后动态生成html
  3. 前端服务和后端服务 分开部署

python 前后端分离相关推荐

  1. python前后端分离前端权限_Linux上搭建前后端分离项目

    一.准备工作 1.准备好服务器 2.Linux上准备搭建环境需要的软件 赞赞羊项目需要用到的软件: python.gunicorn.nginx.MySQL.redis 3.开发人员对代码打包 前端需要 ...

  2. python前后端分离项目部署_nginx+uwsgi+supervisor部署django前后端分离项目

    以下内容为原创,转载请注明出处! 先前一直用的apache部署django项目,查看链接地址:https://www.520pf.cn/article/22.html .这次帮同事用nginx部署服务 ...

  3. python flask高级编程之restful_('Python Flask高级编程之RESTFul API前后端分离精讲',),全套视频教程学习资料通过百度云网盘下载...

    资源详情 r n t某课网好评度100%的Python Flask高级编程之RESTFul API前后端分离精讲 r n t t t第1章 随便聊聊 r n t t t聊聊Flask与Django,聊 ...

  4. 几十行python代码构建一个前后端分离的目标检测演示网站,代码开源

    在深度学习更讲究实用和落地的今天,构建一个简单的,可以利用浏览器和后端交互的演示性 Demo 可以说非常重要且实用了.本文我们将简单的介绍如何用几十行核心代码构建一个好用的.前后端分离的Demo. 2 ...

  5. python后端教程_Python学习教程(技术干货):关于前后端分离开发入门

    原标题:Python学习教程(技术干货):关于前后端分离开发入门 对于程序员来说,其实Tab和空格远远不只是"立场"问题那么简单. 在不同的编辑器里tab的长度可能不一致,所以在一 ...

  6. 【python学习笔记】关于python Flask前后端分离跨域问题

    关于python Flask前后端分离跨域问题 前后端分离过程中,前后端对接测试难免遇到跨域问题.因为是个新司机,所以在我经过一天的测试,才找到解决办法=-= 第一种方法 from functools ...

  7. python后端开发的缺点_前后端分离优缺点

    前后端分离优缺点 之前有朋友问我:什么是前后端分离.他说北度搜到的都是大篇幅文章,看完还是很懵. 这里我简单总结下,如果有疏漏和不对的地方还请路过的网友指出. 一.先用一张图来解释 二.为什么要前后端 ...

  8. 视频教程-Python+Vue+Django前后端分离项目实战-Python

    Python+Vue+Django前后端分离项目实战 教学风格独特,以学员视角出发设计课程,难易适度,重点突出,架构清晰,将实战经验融合到教学中.讲授技术同时传递方法.得到广大学员的高度认可. 王进 ...

  9. python全栈生鲜电商_Python前后端分离开发Vue+Django REST framework全栈打造生鲜电商项目...

    vue项目采用当前流行的前后端分离式开发技术,涉及RESTFul API基础知识和Vue项目结构分析,解决了技术开发单一的痛点,拥有超前的技术融合技能,让你在开发的领域比别人技高一筹! 1.项目初始化 ...

最新文章

  1. 【图像修复】浅析:图像修复中的TV模型
  2. 微信官方数据披露:哪些文章更受朋友圈欢迎
  3. rfid2-micro2440,keil4裸机
  4. tcp 三次握手与四次挥手_TCP三次握手与四次挥手详解
  5. 前几帧预测 深度学习_使用深度学习从十二导联心电图预测心律失常
  6. opencv matlab配置,Matlab下运行c++程序的配置(包含opencv的c++程序)
  7. 【STL源码剖析读书笔记】自己实现stack之MyStack(底层用MyList)
  8. HDOJ--1863--畅通工程
  9. 小程序开发基础-swiper 滑块视图容器
  10. 实战:使用python爬取新冠疫情国内外最新数据
  11. C++ - dynamic_cast
  12. opencv-3.4.2-vc14_vc15.exe 下载
  13. 如何修改VS编译器的背景图:快来换属于你的背景图!!!!!
  14. WIN10彻底禁用UAC(用户账户控制)
  15. 项目质量管理工具--鱼骨图(石川图)
  16. clion设置为中文_手把手教你去除CLion的中文字符乱码
  17. 接口测试平台代码实现146: 平台主题-夏日清凉5
  18. Java的Integer和Integer比较相等
  19. MSRA的2022秋招各大厂SSP+ offer
  20. CentOS 6 忘记密码,修改密码

热门文章

  1. Servlet生命周期、工作步骤
  2. 如何从CDN加载jQuery?
  3. java界面随机点名程序
  4. windows10系统时间线中的活动历史记录无法删除的bug,解决方案
  5. 在 DAZ STUDIO 中创建水面
  6. 牛人经验2(国家形势与个人选择以及创业)
  7. 前端正则表达式校验邮箱,电话,身份证等
  8. Ansible的管理变量、机密和事实
  9. 抖音 Android 性能优化:新一代全能型性能分析工具 Rhea!
  10. Django中 JWT -- obtain_jwt_token的原理