HTTP 方法与GET 和 POST 方法的对比
HTTP 方法与GET
1.常用的HTTP方法
浏览器发送请求时采用的方法,和响应无关
GET、POST、PUT、DELETE
用来定义对于资源才去什么样的操作,有各自的语义
2.HTTP方法的语义
GET获取数据
获取资源(文件)
POST 创建数据
注册
PUT更新数据
修改个人信息,修改密码
DELETE 删除数据
删除一条评论
增删改查
这些方法虽然有各自的语义,但是并不是强制性的
3.RESTful接口设计
一种接口设计风格,充分利用HTTP方法的语义
通过用户ID获取个人信息,使用GET方法
https://www.imooc.com/api/http/getUser?id=1
GET
https://www.imooc.com/api/http/user?id=1
注册新用户,使用POST方法
https://www.imooc.com/api/http/addUserl
POST
https://www.imooc.com/api/http/user
修改一个用户,使用POST方法
https://www.imooc.com/api/http/modifyUser
PUT
https://www.imooc.com/api/http/user
删除一个用户,使用POST方法
https://www.imooc.com/api/http/deleteUser
DELETE
https://www.imooc.com/api/http/user
POST 方法的对比
1.语义
GET:获取数据
POST:创建数据
2.缓存
GET可以被缓存,POST不会被缓存
3.发送数据
GET通过地址在请求头携带数据
能携带的数据量个地址长度有关系,一般多就几k
POST既可以通过地址在请求头中携带数据,也可以通过请求体携带数据
能携带的数据量理论上是无限
携带少量数据,可以使用GET请求,大量的数据可以使用POST请求
4.安全性
?username=username
GET和POST都不安全
发送密码或其他敏感信息时不要使用GET,主要是避免直接被他人窥屏或通过历史记录找到你的密码