1. 安全性
HTTP请求中的安全性指的是它不会修改服务器的数据。也就是说,这是一个对服务器只读操作的方法。比如GET
,HEAD
和 OPTIONS
这些方法都是安全的。
所有安全的方法都是具有幂等性,但具有幂等性的方法不一定都是安全的。PUT
和 DELETE
都是幂等的,但不是安全的。
安全性的作用
在于防止意外修改服务器上的资源。浏览器通常会在发送非安全请求之前询问用户的确认,以防止错误的修改行为。此外,安全请求通常也不会被浏览器阻止,因为它们不会对服务器产生副作用。
2. 幂等性
幂等性指如果使用相同的请求方法多次发送相同请求,则服务器上的预期效果与仅发送一次请求时的效果相同。
常见的幂等方法
GET:用于请求访问已被URI识别的资源,是最典型的幂等方法。不论请求多少次,都不会改变服务器状态,仅返回资源表示。
HEAD:类似于GET,但服务器只返回响应头,不返回消息体,因此也是幂等的。
OPTIONS:检测服务器所支持的请求方法,确定服务器支持哪些 CORS(跨域资源共享)策略。OPTIONS 预检请求是什么?
PUT:用于替换服务器上的某个现有资源,或者在资源不存在时创建它。理论上是幂等的,因为多次执行同一条PUT请求应该