-
http协议: 超文本传输协议,应用层协议,是互联网的通信基础。
-
http原理:
2.1. 客户端和服务端建立连接
2.2. 客户端向服务端发送请求(请求报文)格式:请求首行,请求头(不固定),请求空行(\r\n 作用区分请求头和请求体)、请求体。
2.3. 服务器接收并响应(格式):响应首行、响应头、响应空行、响应体。
2.4. 释放TCP链接(connection : keep-alive,保持链接3s,close 之间断开 )
2.5. 浏览器解析响应体内容。 -
url : 统一资源定位符,用来确定互联网中的唯一资源。
常用部分:
① 协议 : http 或者 https
② 服务器(域名): www.baidu.com
③ 端口号: web应用 默认 80
④ 路径: /jxsp/xx/sss/a.txt
⑤ 参数: 使用 ? 与 路径分割, 参数格式 键值对格式 key=value,多个键值对之间使用 & 符号进行连接。 -
HTTP协议请求格式
请求首行:
请求方法(get、post) URL(请求路径例如 /aa/bb/a.txt) 协议版本(HTTP/1.1) \r\n
GET和POST 请求区别:
GET: 超链接(a标签)、地址栏输入的url 都是GET请求,不安全。字符有限。
POST:表单提交时POST请求、 数据放在请求体中,安全。理论上长度无限。
请求头:
请求头格式: KEY:VALUE 格式 \r\n
请求头可以省略。
请求空行: \r\n
作用: 区分 请求头和请求体内容
请求体:
作用: 向服务器传输内容。
注意: 只有POST 方式才有请求体。 -
HTTP协议响应格式
响应首行(状态行):
格式: 协议版本号(HTTP/1.1 ) 状态码(响应码) 状态码描述\r\n
常用的状态码:
200: 一切ok。
302: 重定向。
404:资源不存在。
500:服务器内部有错误。
响应头:
格式: KEY:VALUE响应空行: \r\n
作用: 同请求空行响应体:
返回给浏览器的内容。 -
软件架构
(1) C/S
① 客户端服务器架构,需要用户下载客户端,对电脑环境依赖比较大。
(2) B/S
① 浏览器服务器架构,只需要用户有浏览器即可。对电脑环境依赖比较小。(3) C/S 和B/S架构运行方式
① C/S : 客户端和服务器要一直保持链接。对服务器压力比较大。
② B/S: 请求响应模式,请求响应完就断开链接。对服务器压力比较小。 -
WEB框架
(1) 什么是框架:
① 框架的本质是一个socket。所有的框架都是对socket进行了不同的封装。
(2) 框架的作用
① 完成基础的功能,程序员从此基础上进行业务逻辑的开发,提高了开发效率。 -
WSGI
WSGI : Web Server Gateway Interface, Web服务器网关接口。是一种规范,
规范:web服务器应用和框架的使用。
Django自带的服务器应用 wsgiref 模块。 -
Django下载
pip install django==2.1.2
Django,把socket一步步封装成Django
最新推荐文章于 2023-07-27 17:35:14 发布