1 http协议
HTTP 协议
HTTP 协议是接下来学习网站框架最重要的协议HTTP (HyperText Transfor Protocol) 超文本传输协议是互联网目前应用最为广泛的一种协议目前的 WWW 服务器都基于 HTTP 协议,HTTP 协议的目的是为了提供一种发布 Web 及接收 Web 页面数据的方法HTTP 协议常用端口为 80,客户端首先通过 80 端口向 HTTP 服务端发起请求,建立 TCP 连接,之后进行 HTTP 数据传输
B/S 架构
HTTP 协议属于建立在 TCP 协议中的应用层上的一种协议,HTTP 协议以客户端请求和服务端应答为标准,浏览器(*browser*)通常被人称为客户端,Web 服务器(*server*)常被称作服务端,所以人们经常称这样浏览器/服务端的架构为 B/S 架构
Request 请求
当我们使用HTTP协议访问某个连接时,首先需要向服务器提交一个Request请求
一般当我们使用浏览器访问Web服务时,由浏览器完成这个工作,Request消息分为三部分,分别包括:Request Line、Request Header、Body
在linux下可以通过curl -V命令可以查看,当然也可以通过浏览器的检查器看到
curl -v https://baidu.com
展示的请求头是这样的
* About to connect() to baidu.com port 80 (#0)
* Trying 220.181.38.148...
* Connected to baidu.com (220.181.38.148) port 80 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.29.0
> Host: baidu.com
> Accept: */*
请求方式
请求 | 解释 |
---|---|
GET | 获取服务端数据,比如浏览一个网站,最普通的动作 |
POST | 向服务端提交数据,比如注册帐号的时候 |
PUT | 向服务端上传数据 |
DELETE | 删除服务端通过 Request-URL 所标示的资源 |
TRACE | 测试服务端是否可以接收到 Request 请求 |
CONNECT | 以管道方式连接代理服务器 |
OPTIONS | 返回服务器所支持的其他 HTTP 请求方法 |
HEAD | 与 GET 方法类似,但不返回服务器响应时的消息体 |
Response 响应
服务器接收到之后,会向我们返回一个Response响应,浏览器接收到了Response之后,会帮助我们对信息进行解析,之后我们就可以看到对应的Web页面及获取到的资源