Appearance
6.GET 和 POST 的区别及使⽤场景
1.GET / POST 使⽤场景
- GET:用于请求获取数据,通常用于获取资源,不应该对服务器状态产生任何影响。GET 请求的参数通常附加在 URL 上,有长度限制,不适合传输敏感数据。(用于获取资源,网页、图片、文档)
- POST:用于向服务器提交数据,通常用于发送表单数据、文件上传等。POST 请求的参数通常包含在请求体中,没有长度限制,适合传输敏感数据。(用于注册、登录、表单提交、对资源的操作等)
2.GET 和 POST 的区别
1).数据传输方式
- GET 请求将数据附加在 URL 中,可以被书签保存,被浏览器历史记录等等,因此不适合传输敏感信息。
- POST 请求将数据包含在请求体中,不会出现在 URL 中,更适合传输敏感信息。
2).安全性
- GET 请求通常不是安全的,数据可见,可能被恶意截获,修改。
- POST 请求更安全,因为数据不可见。
3).幂等性
- GET 请求是幂等的,多次发送相同的 GET 请求不会对服务器状态产生改变。
- POST 请求通常不是幂等的,多次发送相同的 POST 请求可能导致服务器状态的改变。
4).缓存
- GET 请求可以被浏览器缓存,因为它们不会改变服务器状态。
- POST 请求不会被浏览器缓存。