http的请求方法(get和post的区别)

httpd 8中请求方法:

get,post,HEAD、PUT、DELETE、TRACE、CONNECT、OPTIONS .

各种方法的作用:

请求方法  描述
GET请求指定的页面信息,包括响应头和响应体
HEAD类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头。一般用于检查文件的信息是否更新。
POST

向服务器提交数据,比如评论;

PUT客户端向服务器更新数据
DELETE 请求服务器删除指定的页面
CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
OPTIONS  允许客户端查看服务器的性能
TRACE回显服务器收到的请求,主要用于测试或诊断。

get和post的区别

1,请求报文格式:

get URL可见:

使用get方法,http的请求行有请求方法,URL和http版本。

GET /search/users?q=JakeWharton HTTP/1.1
Host: api.github.com
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: _octo=GH1.1.1623908978.1549006668; _ga=GA1.2.548087391.1549006688; logged_in=yes; dotcom_user=GoMarck; _gid=GA1.2.17634150.1554639136; _gat=1

post 不可见:

使用post方法,http的请求行只有post方法和http版本,没有URL.

POST / HTTP/1.1
Host: www.wrox.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.6)
Gecko/20050225 Firefox/1.0.1
Content-Type: application/x-www-form-urlencoded
Content-Length: 40
Connection: Keep-Alive

name=Professional%20Ajax&publisher=Wiley

2,参数的传递格式:

get方法如果要传递参数,参数需要拼接到url中传递。

post如果需要传递参数,post的参数拼接到消息体中进行传输。

3,缓存性:

get请求是可以缓存的

post请求不可以缓存

因为get请求只是请求,那么第一次请求的数据就可以缓存在客户端,下次再次请求时就可以直接获取,而不用到服务端获取;但是post请求用于新增数据,所以不可缓存。

4,后退页面的反应

get请求页面后退时,不产生影响

post请求页面后退时,会重新提交请求

5,传输数据的大小

get一般传输数据大小不超过2k-4k(根据浏览器不同,限制不一样,但相差不大)

post请求传输数据的大小根据php.ini 配置文件设定,也可以无限大。

6、安全性

get是安全的,post是不安全的,因为链接

7、http消息头和消息体发送方式(数据包)

GET产生一个TCP数据包;POST产生两个TCP数据包。对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点。并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。
 

以上信息来源:

链接1

链接2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值