1. Web框架的原理
1. 浏览器(socket客户端) 网站的服务器(socket服务端)
2. HTTP协议
1. 目前用的版本:HTTP/1.1,最新的版本是HTTP/2
2. http默认端口80,https默认端口是443
3. 请求(request)的消息格式
1. 请求行
2. 请求头
3. 空行
4. 请求数据
4. 响应(response)的消息格式
1. 响应行
2. 响应头
3. 空行
4. 响应数据
3. Web框架原理总结
1. 收发socket消息(Web服务器程序) --> uWsgi、Gunicorn、wsgiref (Nginx和tomcat)
WSGI协议
2. 业务逻辑不同(Web应用程序) --> Django、Flask、Webpy、bottle、Tornado
4. wsgiref简单示例
1. 使用wsgiref收发socket消息
5. jinja2简单示例
1. 使用jinja2进行字符串替换
6. Python中Web框架的分类
a. 收发socket消息
b. 根据不同的URL执行不同的函数(业务逻辑)
c. 字符串替换(动态网页)
1. 第一种分类:(按照上面的三部分功能划分)
1. 自己实现b和c,使用第三方的a --> Django
2. 自己实现b,使用第三方的a和c --> Flask
3. 自己实现a、b、c --> Tornado
2. 第二种分类:
1. Django(大而全)
2. 其他
2. Django
1. 安装
1. 命令行安装:
1. pip install django==1.11.16
补充:
1. pip install django==1.11.16 -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
2. pip list
2. PyCharm安装
2. 创建我们第一个Django项目
1. 命令行创建
django-admin startproject 项目名
2. PyCharm创建
File -> new project -> 左边选第二项,右边填项目名并且选择Python解释器
3. 运行Django项目
1. 命令行
1. 切换到项目的目录下
2. python manage.py runserver
python manage.py runserver 127.0.0.1:8080
python manage.py runserver 8090
2. PyCharm
1. 点绿色的三角(注意左侧名称要与项目名相同)
4. 使用Django项目
1. 基础必会三件套
1. 返回字符串 HttpResponse
2. 返回HTML文件 render
原文地址:https://www.cnblogs.com/cavalier-chen/p/9844591.html