HTTP协议

前言

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。

HTTP协议工作于客户端到服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。

1 HTTP 请求

(一)http

http请求由三部分组成,分别是:请求行、消息报头、请求正文

一个完整的请求流程是

浏览器负责发起请求

服务器在 80 端口接收请求

服务器负责返回内容(响应)

(二)用Chrome开发者工具查看 HTTP 请求内容

1 我们以百度为例子,用浏览器打开百度地址

2 点击检查进入开发者模式

3 点击network查看请求详细信息



2 HTTP 响应

HTTP响应也是由三个部分组成,分别是:状态行、消息报头、响应正文

(一) 响应状态码常见状态

1xx:指示信息--表示请求已接收,继续处理

2xx:成功--表示请求已被成功接收、理解、接受

3xx:重定向--要完成请求必须进行更进一步的操作

4xx:客户端错误--请求有语法错误或请求无法实现

5xx:服务器端错误--服务器未能实现合法的请求

200 OK      //客户端请求成功

400 Bad Request  //客户端请求有语法错误,不能被服务器所理解

401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用 

403 Forbidden  //服务器收到请求,但是拒绝提供服务

404 Not Found  //请求资源不存在,eg:输入了错误的URL

500 Internal Server Error //服务器发生不可预期的错误

503 Server Unavailable  //服务器当前不能处理客户端的请求,一段时间后可能恢复正常

(二)响应的Content-Type表示返回的数据格式

(三)用Chrome开发者工具查看 HTTP 返回内容

操作步骤上同




3. 如何使用 curl 命令

我们能用curl快速创建一个请求,curl命令在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,它支持文件的上传和下载,是一款很强大的http命令行工具

例如 curl -s -v -H "sssss" -- "https://www.baidu.com"



你可能感兴趣的:(HTTP协议)