post和get请求的区别

超文本传输协议(HTTP)的设计目的是保证客户机与服务器之间的通信。
HTTP 的工作方式是客户机与服务器之间的请求-应答协议。
web 浏览器可能是客户端,而计算机上的网络应用程序也可能作为服务器端。
举例:客户端(浏览器)向服务器提交 HTTP 请求;服务器向客户端返回响应。响应包含关于请求的状态信息以及可能被请求的内容。

一、post和get请求的区别:
1、http与服务器进行交互的方式有4种:get、post、put、delete
其中get用于常获取数据,post常用于新增数据,put常用于修改数据,delete常用于删除数据。对应于服务器的查、增、改、删

2、get把请求的数据放到url(请求头)上,即http协议头。get使用URL或Cookie传参。发送数据时浏览器会把http header和data一并发送出去,服务器响应200(返回数据)
其格式为:
以?分割URL和传输数据,参数之间以&相连。
(1)数据如果是英文字母/数字,原样发送,
(2)如果是空格,转换为+,
(3)如果是中文/其他字符,则直接把字符串用BASE64加密,及“%”加上“字符串的16进制ASCII码”。

post把数据放在HTTP的包体内(requrest body)。发送数据时浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

3、POST比GET安全,因为数据在地址栏上不可见。
4、 get 请求可被缓存,post 请求不会被缓存
get 请求保留在浏览器历史记录中,post 请求不会保留在浏览器历史记录中
get 请求可被收藏为书签,post 不能被收藏为书签
get 请求不应在处理敏感数据时使用,post 请求对数据长度没有要求(理论上,实际上起限制作用的是服务器的处理程序的处理能力)
get 只接受ASCII字符的参数的数据类型,而post没有限制

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值