首先了解什么事HTTP协议;
1.浏览器往服务器发的 请求(request):
请求消息的格式:
请求方法 路径 HTTP/1.1\r\n
k1:v1\r\n
k2:v2\r\n
\r\n
请求数据
2.服务端往浏览器发的 响应(respond):
响应的消息格式:
HTTP/1.1 状态码 状态描述符\r\n
k1:v1\r\n
k2:v2\r\n
\r\n
响应的正文 -------- html页面
动态网页:本质上是字符串的替换。
字符串替换发生在哪个地方:服务端替换完成后在发送给浏览器。
总结:
1.web框架的本质就是服务端和浏览器之间的socket通信
2.socket服务端功能划分:
a.与浏览器之间的socket通信收发消息
b.根据用户访问的不同路径执行相应的函数
c.从HTML文件中读取内容完成字符串的替换 ---jinjia2模板语言
3.web框架的分类:
1.按照上面三个功能划分
1.框架自带功能a、b、c -----Tornado框架
2.框架自带功能b、c,使用第三方的a -----Django
3.框架自带功能b,使用第三方的a、c ------Flask
2.按另一个维度划分
1.Django -----大而全(做一个网站要用到的功能它都有)
2.其他 -----Flask 轻量级
新建Django项目
1.命令行创建:Django-admin startproject mysite
2.pycharm创建: file---New project----左侧选Django---右侧填项目路径,并且勾选python。exe
设置Django项目
1.settings.py
1.配置HTML文件存放的位置
2.配置静态文件存放的位置