HTTP协议
1.HTTP介绍
HTTP协议是超文本传输协议。它是一种请求/响应式协议,本机与服务端建立连接后就可以向服务器端发送请求,服务端接收到请求后会返回HTTP响应。
2.HTTP1.0 & HTTP1.1
HTTP1.0过程: 建立连接->发送请求信息->回送响应信息->关闭连接
HTTP1.1:由于HTTP在发送多条信息时,需要建立多次连接影响访问速度和访问网页的速度,所以HTTP1.1应运而生,它支持支持性连接,而且在发送多个请求时不需要等待上一个连接的响应。
3.HTTP消息
消息分为请求消息和响应消息,客户端发送到服务器端的为请求消息,服务器端返回到客户端的为响应消息。
1. 请求消息
一个完整的请求消息分为:请求行、请求头、实体内容三部分
1.请求行
位于HTTP请求的第一行,包括三部分:请求方式、资源路径、所使用的HTTP版本
GET /index.html HTTP/1.1
这就是get请求index.html 路径 HTTP版本为1.1的HTTP请求行
请求方式一共有八种:
GET 请求获取请求行的URL所属标识
POST 向指定资源提交数据,请求服务器进行处理
HEAD 请求获取由URL所标识资源的响应消息头
PUT 将网页放置到指定URL位置(上传/移动)
DELETE 请求服务器删除URL所标识的资源
TRACE 请求服务器会送收到的请求信息,主要用于测试或诊断
CONNECT 保留将来使用
OPTIONS 请求查询服务器的性能,或者查询于资源相关的选项和需求
在实际开发中通常都会使用POST请求方式,优点:POST请求传输大小无限制,POST请求比GET请求更安全90(GET请求方式的参数会在URL处显示出来,而POST不会)
2.消息头
主要用于向服务器端传递附加消息
2.响应消息
一个完整的响应消息主要包括响应状态行、响应消息头和实体内容。
1.响应状态行
位于响应消息的第一行,包括HTTP版本、成功或错误的整数代码和对状态码进行描述的文本信息
HTTP /1.1 200 OK
常见状态码:
1xx: 请求已经接收,需要继续处理
2xx:请求已经成功接收,理解并接受
3xx:为完成请求,客户端需进一步细化请求
4xx:服务端的请求由错误
5xx:服务器端出现错误
2.响应消息头
服务器端通过消息头向客户端传送附加消息,包括服务器名称、被请求资源需要的认证方式、客户端请求资源的最后修改时间、重定向地址等。