HTTP 方法的安全性和幂等性是什么意思?
参考答案
安全方法的语义不要求修改服务端资源状态,例如 GET;幂等表示多次相同请求的预期服务端效果与一次相同。幂等不要求每次响应状态码或响应体完全相同。
PUT 和 DELETE 在标准语义上是幂等的,POST 通常不是,PATCH 是否幂等取决于具体操作设计。服务端仍可能记录日志,安全方法并不表示绝对没有任何副作用。
支付、创建订单等操作不能靠前端禁用按钮保证不重复,通常需要服务端幂等键或其他去重设计。自动重试前要了解方法语义和业务约束,避免把网络超时误判为服务端未执行。