HTTP Methods 方法
HTTP 保证客户机与服务器之间的通信;HTTP的工作方式是客户机与服务器之间的请求-应答协议。
最常用的两种HTTP请求方法是GET和POST
- GET: 从制定资源请求数据
- POST: 向指定的资源提交要被处理的数据
GET和POST都是向服务器请求的方法,我对POST的初步理解有误,以为只能够提交数据,比如提交要发布的文章;实际上也是能够返回数值。
两者区别在于查询的字符串(名称/值对)发送的位置:
- GET: 字符串在请求URL中
- POST: 字符串在请求的HTTP消息主题中
w3教程中详细列出了两者的区别
| GET | POST | |
|---|---|---|
| 后退按钮/刷新 | 无害 | 数据会被重新提交(浏览器应告知用户数据会被重新提交 |
| 书签 | 可收藏为书签 | 不可收藏为书签 |
| 缓存 | 能被缓存 | 不能被缓存 |
| 编码类型 | application/x-www-form-urlencoded | application/x-www-form-urlencoded或multipart/form-data. 为二进制数据使用多重编码 |
| 历史 | 参数保留在浏览器历史中 | 参数不会保存在浏览器历史中 |
| 对数据长度的限制 | 是的。当发送数据中,GET方法向URL添加数据;URL长度受限(<=2048) | 无限制 |
| 对数据类型的限制 | 只允许ASCII字符 | 没有限制。也允许二进制数据 |
| 安全性 | 数据在URL中对所有人都是可见的 | 数据不会显示在URL中 |