iOS面试-iOS最新面试题之Get 和Post请求的区别,(看似简单,但坑很深)

来源:互联网 发布:龙岳辉 大数据 编辑:程序博客网 时间:2024/06/06 03:10
nGETPOST是两种最常用的与服务器进行交互的HTTP方法
nGET
nGET的语义是获取指定URL的资源
n将数据按照variable=value的形式,添加到action所指向的URL后面,并且两者使用"?"连接,各变量之间使用"&"连接
n貌似不安全,因为在传输过程中,数据被放在请求的URL
n传输的数据量小,这主要是因为受URL长度限制


nPOST
nPOST的语义是向指定URL的资源添加数据
n将数据放在数据体中,按照变量和值相对应的方式,传递到action所指向URL
n所有数据对用户来说不可见
n可以传输大量数据,上传文件只能使用Pos


大多数求职者只会答出get时安全的,post时不安全的,但这个答案是错误的!!

真正的区别在于:
get请求时一个取的过程,没有数据体的存在,
对于用户而言,get是不安全的,发送的参数都裸露在外边
对于服务器而言,它时安全的,因为它没有给服务器发送真正的数据体

post请求时一个先发再取的过程,右数据体的存在
对于用户而言,post时相对安全的,因为发送的参数都在数据体中隐藏着
对于服务器而言,它是不安全的,因为它可以给服务器发送真正的数据体,如果有人想攻击这台服务器,完全可以控制大量的计算机给这台服务器发送post请求,就会造成拒绝服务攻击
0 0
原创粉丝点击