关于我对于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 服务器超负载或者停机维护

浙公网安备 33010602011771号