发布于2021-03-17 05:34 阅读(987) 评论(0) 点赞(20) 收藏(3)
HTTP协议的报文都是ASCLL码,建立在TCP传输协议之上。HTTP的请求主要有三个部分:请求行、请求头和请求体。
即求情的数据格式中的第一行,由三个内容组成:请求方式、URL、HTTP协议的版本。
说明:
1.请求方式:GET or POST
2.URL:请求的目标网址,或者IP地址
3.HTTP协议版本:发送请求的HTTP协议的版本号如:HTTP/1.1
即向服务器发送一些数据和数据标识等等,有很多信息,每个信息都有 "信息名:+信息值"的方式组成,而且每个信息之间必须由空行隔开,代表信息结束。
User-Agent: firefox//表示发送请求的浏览器(请求代理端)是firefox
Host: shop.100.com//表示请求的主机域名(基于域名的虚拟主机就是靠这个头判断的)
Cookie:name=itcast//浏览器携带的cookie数据。
Content-Type: application/x-www-form-urlencoded
Content-Length: 40
Connection: Keep-Alive
是代理端向服务器发送的请求数据,请求体才是需要给服务器发送的数据,比如要给服务器发送一个数据 1,那么这个数据1 就是请求体。
GET请求的数据会以 URL+参数 的方式进行传输,并且和URL一起传输,这也是GET请求的数据有限的原因之一,且可以缓存。GET请求的数据一般不大于2k~4K这个数值取决于浏览器。
(1) 请求行会体现请求方式,GET请求的请求行一般就是以 “GET” 开头:如 GET /books/?sex=man&name=Professional HTTP/1.1 ;
(2) GET请求的服务器响应,当请求成功后,服务器直接返回:200,再次之前没有其他回应(因为GET请求发送的是一个数据包)
(1) URL 可见,
(2) 数据可以缓存
(3) 通过拼接URL进行参数传递
(4) 请求后的页面后退不会产生影响
(5) 没有请求体
相对于GET请求,POST请求会更加复杂,同时也会比GET请求更加安全。传输数据的时候,URL不会在请求行中出现,而数据放在请求体部分进行传出。因为数据有了独立的请求部分来存储,所以数据的大小是无限的,可以由php.ini 文件来设定。
(1) 请求行会体现请求方式,POST请求的请求行一般就是以 “POST” 开头,且后面只能看到HTTP协议类型:如 POST / HTTP/1.1;
(2) POST请求的服务器响应,当请求成功后,服务器先返回:100,然后再返回200;原因是POST请求会先发送hander,服务器返回100,然后再发送data,服务器返回200。
(1) URL 不可见,安全性高
(2) 数据不可以缓存
(3) 数据放在请求体中发送
(4) 请求后的页面后退,会重新发起请求
(5) 数据大小可以无限大
两者之前的区别体现在各自的特点当中
师承:上官可编程(同抖音号)
作者:92wwhehjw
链接:http://www.qianduanheidong.com/blog/article/39170/1584e8b9f721ca83134a/
来源:前端黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 前端黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-3
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!