一. 四款python web框架简单总结
Django :
- 优点 - 大而全所有组件都是有组织内部开发高度定制化 教科书级别的框架
- 缺点 - 浪费资源,请求的时候需要的资源较高
Flask ;
-
优势 - 小而精,组件只有Session,第三方机构强烈支持Flask,非常多的三方组件 非常简单
-
缺陷 - 由于三方组件的关系 稳定性相对较差 Flask-Session
Tornado :
-
优势 - 异步IO 非阻塞 原生WebSocket
-
缺陷 - 组件 == 0 关于异步的不容易理解 Debug 非常困难
Sanic :
-
优势 - 异步IO 非阻塞 原生WebSocket + 小而精,组件只有Session,第三方机构强烈支持Flask,非常多的三方组件
-
缺陷 - 复杂度较高
二.Flask启动
1. 3行启动Flask
from flask import Flask app = Flask(__name__) app.run()
2. 6行启动Flask Hello
from flask import Flask app = Flask(__name__) @app.route("/") def index(): return "hello" app.run()
三.Flask响应
1.响应
1.HTTPResponse return "hello" 2.render return render_template("login.html") 3.redircet return redircet("/login")
2.封装: Flask的封装
send_file() return send_file("文件路径") # 打开并返回文件内容 确定会在响应头中加入 Content-Type:文件格式 + Content-Length:文件大小(bytes) jsonify({k:v}) return jsonify({k:v}) # 返回一个客户端可以识别的json格式字符串 确定会在响应头中加入 Content-Type:application/json