四、HTTP
目录:什么是HTTP、HTTP请求、HTTP响应
1.什么是HTTP
HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。
文本就像是HTML、word文档、txt等,而超文本就如图片、音乐、视频、定位、地图等。
HTTP的默认端口号为80。
HTTPS更加安全,其默认端口号为443。
HTTP的两个时代:
①HTTP/1.0:客户端可以与Web服务器连接后,只能获得一个Web资源,获得后断开连接。
②HTTP/1.1:客户端可以与Web服务器连接后,可以获得多个Web资源。
2.HTTP请求
客户端发请求(Request)到服务器。
以百度为例
Request URL: http://www.baidu.com/
Request Method: GET 请求方式
Status Code: 200 OK 状态码
Remote Address: 14.215.177.39:443 远程地址
Accept: text/html
Accept-Encoding: gzip, deflare, br
Accept-Language: zh-CN,zh;q=0.9
Cache-Control: max-age=0
Connection: keep-alive
1)请求行
①百度请求行中的请求方式:GET
②请求方式:GET、POST、HEAD、DELETE、PUT、TRACT…
ⅠGET:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效。
ⅡPOST:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但不高效。
2)消息头
Accept 告诉浏览器它所支持的数据类型
Accept-Encoding 支持的编码格式 GBK、UTF-8、GB2312、ISO8859-1
Accept-Language 告诉浏览器它的语言环境
Cache-Control 缓存控制
Connection 告诉浏览器请求完成是断开还是保持链接
Host 主机
3.HTTP响应
服务器响应(Response)给客户端。
以百度为例
Cache-Control: private 缓存控制
Connection: Keep-Alive 连接
Content-Encoding: gzip 编码
Content-Type: text/html 类型
1)响应体
Accept 告诉浏览器它所支持的数据类型
Accept-Encoding 支持的编码格式 GBK、UTF-8、GB2312、ISO8859-1
Accept-Language 告诉浏览器它的语言环境
Cache-Control 缓存控制
Connection 告诉浏览器请求完成是断开还是保持链接
Host 主机
Refresh 告诉客户端多久刷新一次
Location 让网页重新定位
2)响应状态码
①200:请求响应成功。
②3xx:请求重定向。 重定向:重新到给的新位置去。
③4xx:找不到资源,如404。
④5xx:服务器代码错误,如500、502(网关错误)。