Web应用程序作用
- Web(World Wide Web)诞生最初的目的,是为了利用互联网交流工作文档。
- client(客户端)可以是任何联网的设备,能向服务端发送请求。
- 一次请求一个响应,有多少请求就有多少个响应。
- 客户端没有发起请求,服务器端是不能主动向客户端发送响应数据的。
关于Web框架
一、什么是Web框架?
- 已经封装好了一段代码,协助程序快速开发,相当于项目半成品。
- 开发者只需要按照框架约定要求,在指定位置上写上自己的业务逻辑代码。
- 例如:在某个区需要 成立一家医院,有两种方式:
- 圈地、打地基、盖楼、装修、入住。
- 买楼、装修、入住。
- 例如:在某个区需要 成立一家医院,有两种方式:
二、为什么要用Web框架?
- Web网站发展至今,特别是服务器端,设计到的知识、内容非常广泛。这对程序员的要求会越来越高。如果采用成熟、稳健的框架,那么一些基础的工作,比如安全性、数据流控制都可以让框架来处理。
- 程序开发人员可以把精力放在具体的业务逻辑上面。
- 总结:降低开发难度,提高开发效率,不需要重复造轮子。
三、Python中常用的Web框架及其特点
- flask:提供基本功能,属于轻量级。(不提供复杂的功能,如站点管理、数据库的连接,需要安装其他的模块来实现。)
- djiango:提供相对完整的功能,重量级。(提供了包括站点管理、数据库连接的各种功能,可用于高效制作大型网站、大型应用。)
- tornado:偏嵌入式Web应用,非阻塞式服务器。(自带高并发处理的能力,同时多个用户访问会自动开启多进程来进行处理)
四、关于Flask
- 诞生时间:Flask诞生于2010年,是Armin ronacher用Python语言基于Werkzeug工具箱编写的轻量级web开发框架。
- Flask框架包含了两个核心:Werkzeug工具箱(专门用来处理请求相关的内容)、Jinja2模板引擎(用来做页面渲染处理的)。
- 由于Flask没有提供额外的其他功能,所以几乎所有的功能都要用到扩展实现(用于处理数据库的连接、站点管理、数据库迁移、做缓存处理(flask-cache))。
Flask常用扩展包
- Flask-SQLalchemy:操作数据库;
- Flask-script:插入脚本;
- Flask-migrate:管理迁移数据库;
- Flask-Session:Session存储方式指定;
- Flask-WTF:表单;
- Flask-Mail:邮件;
- Flask-Bable:提供国际化和本地化支持,翻译;
- Flask-Login:认证用户状态;
- Flask-OpenID:认证;
- Flask-RESTful:开发REST API的工具;
- Flask-Bootstrap:集成前端Twitter Bootstrap框架;
- Flask-Moment:本地化日期和时间;
- Flask-Admin:简单而可扩展的管理接口的框架。
更多扩展列表:http://flask.pocoo.org/extensions/
通常我们需要什么功能就安装什么扩展就可以了,不用全部都安装,没有必要。
- flask中文文档(http://docs.jinkan.org/docs/flask/)
- flask英文文档(https://flask.palletsprojects.com/en/2.3.x/)