post和get的自我总结

本文详细阐述了HTTP中GET和POST两种请求方法的区别,包括它们的操作性、安全性及传送数据大小的不同。并给出了在实际应用中如何选择这两种方法的一些建议。

HTTP中主要定义了四种与web服务的方法:GET,POST,PUT,DELETE。但是mvc中只支持GET和POST,因为web mvc的最初的设计者们,并没有把URL当成抽象的资源来设计。

区别:

1.操作性

   GET是获取数据,POST是提交数据。当然这只是表面上意思,GET也是可以发送数据,不然如何获取数据,GET发送的数据是附加在URL上的,以?来分割URL和传输数据,参数之间以&相连,如:apsx.html?id=001&password=id,即ID,和password是传送的数据。POST再提交之后也是可以获取一定的数据。两者最主要的区别是GET方式是request_line(URL)上传送数据,而POST是在request_body中传送数据,即多行头步中。服务端中获得GET的请求参数是request.querstrng(),获得POST的请求参数是requet.Form

2.安全性

   1.从数据的操作性上来说:get相对post是安全的,get只是获取数据,而不改变数据,是幂等的,而POST会改变数据,容易造成数据的错误性。

   2.从保密性上来说:post相对于get是安全的,因为get实在URL上发出的,数据时可见的,比如说登录名的密码用get请求的话,如果浏览器缓存的话很容易泄露,而POST实在body上传输数据,是不可见的。但也不是绝对的,post在浏览器上显示不出来,但可以通过但三方工具来查看。

3.传送数据大小

   get传送数据比较小,post传送的数据比较大。理论上来讲http协议并没有限制其大小,限制其大小的是各个浏览器,get是放在URL上传输的,最多1024字节。

   post传送的数据大小理论上没有限制,但是一般都会有个2M的限制。

建议
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;
2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;

 

  

转载于:https://www.cnblogs.com/wenbin891428/p/5294207.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值