什么是RESTful API?

什么是RESTful API?

API设计规范

  1. 将一切数据视作资源。
  2. 描述对资源的操作。(增/删/改/查)
  3. 通过HTTP响应状态码,描述对资源的操作结果。(如:200/5xx)

期望效果:

  1. 看URL知道是什么资源。
  2. Method知道要对资源进行什么操作
  3. 看Response Code知道操作是否成功。

Method规范

用于描述操作(动词)

  1. GET用于读取资源

  2. POST用于创建资源

  3. PUT用于更新资源(客户端提供更新后的完整资源)

  4. DELETE用于删除资源

    一共有八个,常用的上述四个。

URL规范

只使用名词,不能有动词。

Response规范:

需保持统一结构,code对齐HTTP状态码.

{
    code://返回状态
    data://返回数据
    message://状态描述
}

优点

  1. 有效降低沟通成本

  2. 前后端解耦更彻底

  3. 前端更多业务灵活性

扩展

  1. 接口要升级如何处理?

    接口升级处理

    • 版本控制:对于接口的升级,应该采用版本控制来管理不同版本的接口。可以在 URI 中包含版本号,或者使用 HTTP 头部来指定版本信息。
    • 向后兼容性:尽量保持新版本接口与旧版本的向后兼容性,以便现有客户端无需修改代码即可继续使用。
    • 文档更新:及时更新接口文档,包括新增的功能、修改的参数等信息,以便客户端开发人员了解变更。
    • 通知用户:在进行接口升级之前,通知所有使用接口的用户,提前告知即将发生的变更,以便他们做好准备。
  2. 遇到事务性业务逻辑,要如何设计?

    事务性业务逻辑设计

    • 事务管理:使用数据库或者编程语言提供的事务管理功能,确保事务的原子性、一致性、隔离性和持久性(ACID 特性)。
    • 异常处理:在事务中捕获并处理异常,保证事务的一致性。可以进行回滚操作或者进行适当的补偿处理,以保证数据的完整性。
    • 锁机制:使用合适的锁机制来保证事务的隔离性,防止并发操作引起的数据不一致。
    • 性能优化:避免长时间持有事务锁或者事务嵌套过深,合理设计事务范围,以提高系统的性能和并发能力。
    • 业务逻辑的封装:将事务性业务逻辑封装成独立的服务或者模块,以便复用和维护。
  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曼诺尔雷迪亚兹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值