概述HTTP的几种不同的请求方式
get 根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的
post 根据HTTP规范,POST表示可能修改变服务器上的资源的请求
delete 发送请求, 后台会根据不同的URL做出不同的操作
put
post请求和get请求的区别
- GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以
?
分割URL和传输数据,参数之间以&相连.
ps. 如果数据是英文字母/数字, 原样发送, 如果是空格, 转换为
+
, 如果是中文/其他字符, 则直接把字符串用BASE64加密.
POST把提交的数据放置在是HTTP包的body体中.
-
GET请求由于是通过URL提交数据的, 所以长度会受到操作系统和浏览器的限制. HTTP协议规范并没有对URL的长度进行限制.
POST请求把提交的数据放在了body体里. HTTP协议规范同样没有对其大小进行限制, 起到限制作用的是服务器的处理能力. (服务器对body的大小进行了限制)
POST请求的安全性要比GET请求高.
比如: 通过GET提交数据, 用户名和密码将明文出现在URL上, 而且(1)登录页面有可能被浏览器缓存, (2)其他人查看浏览器的历史纪录, 那么别人就可以拿到你的账号和密码了, 除此之外, 使用GET提交数据还可能会造成Cross-site request forgery攻击.