背景
观:前后端接口规范
1、规范大原则
1)接口返回数据即显示:前端仅做渲染逻辑处理;
2)渲染逻辑禁止跨多个接口调用;
3)前端关注交互、渲染逻辑,尽量避免业务逻辑处理的出现;
4)请求响应传输数据格式:JSON。JSON数据尽量简单轻量,避免多级JSON的出现;
2、基本格式
1)请求基本格式
新接口统一使用POST请求。
所有请求数据包装为JSON格式,并存放到入参body中,示例如下:
接口: api/login?
请求参数:
{
“username":"admin",
"password":"123456",
"captcha":"scfd",
"rememberMe":1
}
2.公司规定所有接口都用 post 请求,这是为什么? - 程墨Morgan的回答 - 知乎
https://www.zhihu.com/question/336797348/answer/2189036490
有疑惑所以去查询了什么是幂等,幂等修改服务器的意思,编写请求时选择GET、PUT、POST的原因
幂等修改服务器的意思
幂等修改服务器,从字面上理解,指的是在服务器上进行一种特殊的修改操作,这种操作具有幂等性。
幂等性(Idempotence)是HTTP协议中的一个重要概念,指的是对同一资源的多次请求,如果请求的方法是幂等的,那么这些请求的效果应该与一次请求的效果相同,即多次请求不会对服务器上的资源状态产生不同的影响。
在HTTP协议中,GET、PUT、DELETE等方法被认为是幂等的,而POST、PATCH等方法则通常不被认为是幂等的。因此,幂等修改服务器状态,就是使用HTTP协议中幂等的方法(如PUT或DELETE)来对服务器上的资源进行修改,且这种修改操作在多次执行时,其效果与一次执行相同。
编写请求时选择GET、PUT、POST的原因
GET请求:
幂等且不修改服务器状态:GET请求用于从服务器获取资源,它不会对服务器上的资源状态进行任何修改。由于GET请求是幂等的,无论发送多少次相同的GET请求,返回的结果都应该是一样的。
用途:GET请求通常用于读取数据,如查询数据库中的记录或获取网页内容。
PUT请求:
幂等且修改服务器状态:PUT请求用于向服务器上的指定资源提交完整的资源表示,以替换原有的资源。由于PUT请求是幂等的,多次发送相同的PUT请求,对服务器资源的修改效果应该与一次发送相同。
用途:PUT请求通常用于更新资源,如更新用户信息或替换文件内容。
POST请求:
不幂等且修改服务器状态:POST请求用于向服务器提交数据,请求服务器进行处理(如创建新资源或提交表单数据)。由于POST请求通常不是幂等的,多次发送相同的POST请求可能会导致服务器上的资源状态发生不同的变化(如多次创建相同的资源)。
用途:POST请求通常用于创建新资源或执行某些需要处理数据的操作,如提交表单、上传文件等。
总结
在编写HTTP请求时,选择GET、PUT、POST等不同的方法,主要是基于它们对服务器资源状态的影响以及它们是否满足幂等性的要求。GET请求因其幂等且不修改服务器状态的特点,被用于读取数据;PUT请求因其幂等且修改服务器状态的特点,被用于更新资源;而POST请求则因其不幂等但可以修改服务器状态的特点,被用于创建新资源或执行其他需要处理数据的操作。这样的选择有助于保持HTTP接口的一致性、安全性和易用性。