REST请求的六种方式:GET,POST,PUT,DELETE,HEAD,OPTIONS
在REST API的上下文中,当生成多个相同的请求与生成单个请求具有相同的效果时 - 然后该REST API称为幂等。
GET,PUT,DELETE,HEAD,OPTIONS是自动幂等的,POST不是幂等的
POST和PUT的区别
直接区别
PUT方法是幂等的,因此,如果多次发送重试请求,那应该等同于单个请求修改。
POST方法不是幂等的,因此,如果重试请求N次,那将获得N个资源,其中N个不同的URL在服务器上创建。
使用方式
PUT当想修改已经属于资源集合的单一资源时使用,put完全替换资源,如果请求更新资源的一部分,使用patch。
POST在资源集合下添加子资源时使用。
通常PUT进行UPDATE操作,POST用于CREATE操作。
GET和POST的区别
GET在浏览器回退时是无害的,而POST会再次提交请求。
GET产生的URL地址可以被保存,而POST不可以。
GET请求会被浏览器主动cache,而POST不会,除非手动设置。
GET请求只能进行url编码,而POST支持多种编码方式。
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
GET请求在URL中传送的参数是有长度限制的,而POST么有。
对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
GET参数通过URL传递,POST放在Request body中
参考官方链接:什么是REST | RESTful API 中文网