HTTP协议(个人理解)

HTTP协议

  • 什么是HTTP协议?

    个人理解:HTTP协议就是TCP传输数据的过程中,数据格式的一种规范。
    
  • HTTP协议的作用?

    个人理解:HTTP极大的解决了早期网络刚诞生是用户获取数据步骤繁琐的问题,并且在一定程度上提高了服务器部署的效率。因为HTTP协议规范了用户请求的数据格式和服务器返回数据的格式。服务器可以规定用户在请求头中通过path去获取不同的文件。同时服务器通过响应头中的状态码可以告诉用户这次响应的状态。
    
  • 为什么使用HTTP协议?

    个人理解:因为HTTP协议在互联网中应用十分广泛,几乎所有的浏览器都支持HTTP协议,没有必要再去设计开发一种新的协议。
    
  • HTTP请求格式

    • 例1:GET请求
    GET / HTTP/1.1
    Accept: */*
    Accept-Language: zh-cn
    Accept-Encoding: gzip, deflate
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)
    Host: www.lshck.cn
    Connection: Keep-Alive
    
    第一行GET表示请求方式,/表示根路由,HTTP/1.1表示HTTP1.1版本
    Accept:客户端接受的响应数据类型
    Accept-Language:客户端接受的语言
    Accept-Encoding:压缩的方式
    User-Agent:用户是通过什么工具发送请求的
    Host:服务器地址
    Connection:是长连接还是短链接
    
    • 例2:POST请求
    POST / HTTP1.1
    Host:www.lshck.cn
    User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)
    Content-Type:application/x-www-form-urlencoded
    Content-Length:40
    Connection: Keep-Alive
    
    name=Chenkai&age=21
    
    第一行中POST表示请求方式是POST
    Content-Type:请求体中数据的编码格式
    Content-Length:请求体中数据的长度
    
    注:请求头和请求体使用两个\r\n来分割
    
  • HTTP响应格式

    HTTP/1.1 200 OK
    Date: Thu, 09 Apr 2020 11:48:24 GMT
    Content-length: 12585
    Content-type: image/png
    
    
    
    	这个是响应内容
    
    
    第一行HTTP/1.1表示HTTP1.1版本,200表示状态码,OK是状态码原因短语
    Date: Thu, 09 Apr 2020 11:48:24 GMT # 时间
    Content-length: 12585	# 响应的长度
    Content-type: image/png	# 响应文件的格式
    
    
    
    	这个是响应内容
    
    
    
    • 常用状态码
      • 200:用户请求成功
      • 201:修改数据成功
      • 301:永久重定向
      • 302:临时重定向
      • 404:服务器找不到对应文件
      • 502:服务器异常

你可能感兴趣的:(HTTP,复习,总结)