关于HTTP协议的的相关面试题 : 阐述协议的完整的通信过程,那我们一般可以从下面几个方面进行阐述:
- HTTP协议的定义
- 描述HTTP协议完整的通信过程
HTTP协议的全称
超文本传输协议,定制传输数据的规范(客户端与服务器之间的数据传输规范)
通信过程
1> 请求
客户端 –> 服务器
请求的内容:
a. 请求行(请求方法\HTTP协议版本\请求资源路径)
例如: GET : https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/mantpl/img/news/dustbin1_ec5b2acc.png
b. 请求头(描述客户端的信息)
例如:
Host: ss0.bdstatic.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0
Accept: image/png,image
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
c. 请求体(POST请求才需要有, 存放具体数据)
* 文件数据
* POST请求的参数数据
2> 响应
服务器 –> 客户端
响应的内容:
a. 状态行(HTTP协议版本\状态码\状态信息)
例如 : HTTP/1.1 200 OK
b. 响应头(服务器信息, 返回数据的类型, 返回数据的长度)
c. 实体内容(响应体, 返回给客户端的具体内容)
*服务器返回的JSON数据,文件数据
引用块内容
HTTP请求的方法:
1> GET
* 参数都拼接在URL后面
* 参数有限制
2> POST
* 参数都在请求体
* 参数没有限制
* 文件上传只能用POST