1.语义不同,GET是获取数据,POST是提交数据。
2.HTTP规定GET比POST安全,因为GET只作读取,不会改变服务器中的数据。但这只是规范,并不能保证请求方法的实现也是安全的。
3.GET请求会把附加参数带在URL上,而POST请求会把提交数据放在报文内。在浏览器中,URL的长度会被限制,所以GET请求能传递的数据有限,但HTTP其实没有对其做限制,只是浏览器在限制。
4.HTTP规定GET是幂等的,而POST不是,所谓幂等是指多次请求返回相同的结果,实际应用没有这么严格,当GET获取动态数据时,每次的结果可能有所不同。
POST请求的四种数据格式
1.application/json:这是最常见的 json 格式
2.application/x-www-form-urlencoded浏览器的原生 form 表单
3.multipart/form-data:这一种是表单格式的
4.text/xml