javaweb 2、HTTP讲解
HTTP
什么是HTTP
超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。
- 文本: html,字符串,......
- 超文本: 图片,音乐,视频,定位,地图......
两个时代
- http 1.0
- HTTP/1.0: 客户端可以与web服务器连接后,只能获得一个web资源
- http 2.0
- HTTP/1.1: 客户端可以与web服务器连接后,可以获得多个web资源
HTTP请求
- 客户端--发起请求(Request)--服务器
百度
Request URL: https://www.baidu.com/ 请求地址
Request Method: GET
Status Code: 200 OK
Remote Address: 127.0.0.1:7890
Referrer Policy: strict-origin-when-cross-origin
- 请求行
- 请求方式:GET,POST,DELETE,PUT,TRACT...
- get:请求能够携带的参数比较少,大小有限制,会在浏览器的url地址栏显示数据内容,不安全,但高效
- post:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的url地址栏显示数据内容,安全,但不高
- 消息头
Accept: 告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持哪种编码格式 GBK UTF-8 GB2312 ISO8859-1
Accept-Language: 告诉浏览器,它的语言环境
Connection: 告诉浏览器,请求完成是断开还是保持连接
HTTP响应
- 服务器--响应--客户端
百度
Connection: keep-alive 连接
Content-Encoding: gzip 编码
Content-Type: text/html; charset=utf-8 类型
- 响应体
Accept: 告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持哪种编码格式 GBK UTF-8 GB2312 ISO8859-1
Accept-Language: 告诉浏览器,他的语言环境
Connection: 告诉浏览器,传输完成是断开还是保持连接
HOST: 主机
Refresh: 告诉客户端,多久刷新一次
Location: 让网页重新定位
- 响应状态码
200: 请求响应成功
3: 请求重定向
4: 找不到资源
5**: 服务器代码错误