关于我对于HTTP的理解

什么是HTTP协议?

  首先,协议,就是两者都必须遵守的,这个HTTP协议,是所有的www文件都必须准守的,规定了浏览器和服务器的数据交互的格式。

特性

  必须是先有请求后有响应,请求和响应必须成对出现。

  在这个协议版本是1.0的时候,客户端与服务器响应一次就会断开,版本为1.1时,服务器和客户端会在长时间未响应才会断开连接。

抓包分析

  请求部分

    GET方式的请求

      请求行

        请求方式  get

        请求路径  相对路径/绝对路径

        协议版本  HTTP/1.1

      请求头

        以键值对的形式,一个key对应一个value或者一个key对应对个value

        还有一些键值对比如Referer是防盗链,User-Agent可以获得浏览器的类型

    POST方式的请求

      请求行

        请求方式  post

        请求路径  相对路径/绝对路径

        协议版本  HTTP/1.1

      请求头

        和get方法的大致

      请求体

        请求的参数,比如username=aaa&password=bbb

  注意:在get方式请求中,没有请求体,它的参数信息直接显示在地址栏上,在post方式中,有请求体,参数会通过请求体传递到服务器中进行解析,还有使用get方式进行请求对文件的上传有大小限制,在post方式中对文件上传大小没有限制,所以一般邮箱这类网站使用的都是post请求方式

 

  响应部分

    响应行 

      协议版本  HTTP/1.1

      状态码   1xx/2xx/3xx/4xx/5xx

    响应头

      也是键值对形式,例如location是重定向,Refresh是定时刷新

    响应体

      显示在浏览器上的代码,比如HTML样式

  关于常见的状态码的

    200  请求成功

    301  资源被永久转移到其他URL

    302  URI改变,用户需要重定向操作

    304  网页未被修改

    403  服务器拒绝请求

    404  请求的资源不存在

    500  服务器内部错误

    503  服务器超负载或者停机维护

posted @ 2020-04-14 13:32  Silver9908  阅读(95)  评论(0)    收藏  举报