GET、POST知多少?

最近接到一个需求,接口文档是这样子的:提交表单时,弹窗提醒用户是否打印,如果用户点击打印,就将表单里的相关信息封装成JSON格式的数据经过UrlEncode编码后通过GET请求直接调用对方打印接口进行打印操作。我很疑惑的是,这样做安全吗?首先是接口,万一遇到恶意攻击,恶意调用该接口是否会造成该接口崩溃(不知道对方是如何处理这种情况);对方拿到GET请求后,通过UrlEncode解码也能获取到数据。

相信GET、POST请求大家都非常了解。大家也经常使用的两种请求方法,有没有公司强制规范所有接口都必须用POST请求的。还在学校那会,做一些简单的设计呀,登录啥的都是直接用的GET效率还挺高。POST、GET请求到底有什么不同呢?

1、首先安全,刚刚开头就讲了安全性问题。GET安全性较差,GET请求所发送的数据是URL的一部分,大家都能看到里面的数据。而POST则不同,POST请求参数不会被保存在浏览器历史或者WEB服务器日志中,数据也不会显示在URL中。

GET请求

Postman中POST请求

平时开发用Postman测试POST请求时一般将请求参数写下Body下,并采用JSON的格式。

2、数据长度的限制。GET方法在发送请求时是将参数添加到URL中的,而URL的长度是受限制的(每个浏览器限制的长度也有差异);POST的请求理论上来说是不受限制。

3、数据类型限制。GET请求只允许ASCII字符,而POST没有限制。

4、针对浏览器不同,GET和POST请求也有些许差异。对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200;POST请求浏览器先发送header,服务器响应100 ,浏览器再发送data,服务器响应200 (并不是所有的浏览器都是这样)。这是不是意味着GET请求可以用来优化网站的性能呢?

GET请求

POST请求

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值