万物互联的世界充满着各式各样的 API,如何跨平台、跨语言、互操作至关重要。

REST API 能够以灵活、轻量级的方式集成应用程序,并已成为微服务架构中连接组件的最常用方法,也是目前世界上最流行的 API 架构风格之一。REST架构可以帮助用户实现客户端与服务端关注点分离,让前后端各自迭代,提升管理效率;其无状态的特性可以让应用更容易扩展,更容易地实现缓存策略从而提升系统性能和用户体验。

由于REST是一个架构约定,而不是类似SOAP那样的规范,在使用过程中厘清各类疑问,才能设计更好的API及实施API战略。

REST API概念相关的问题

  • 什么是RESTful?什么是RESTful API?什么是REST API?,一般情况下,术语 REST API 和 RESTful API 可以互换使用

  • 什么是REST架构:REST定义就是一套软件架构风格,而不是规范、标准等。REST架构简称REST,我们说REST API就是指符合REST架构约定的API,而不是符合某种标准的API

  • API与REST API的区别?:集合与子集的关系

  • SOAP API与REST API的区别?:两种风格的Web Service实现

  • Web API与REST API的区别?:概念与架构,基于HTTP的REST API也属于Web API概念

  • OpenAPI与REST API的区别?:OpenAPI规范是REST API的描述语言;REST API也是一种Open API

  • WebSocket API与REST API区别?:两种Web API的实现方式。实时场景用WebSocket,非实时场景用REST API

REST API设计

  • 什么是REST设计原则?:REST概念定义的6大原则

  • REST API设计规范:各种最佳实践的沉淀,类似编程规范

  • REST API设计实践:重点讲HTTP规范与REST API约定的映射

  • 如何标识REST资源?:REST API URL命名的一些最佳实践,友好的URL规划,能简化使用者的理解

  • GraphQL 和 REST 怎么选择?:REST API的两种实现技术。数据资源类API用GraphQL及其框架自动生成REST代码方式会更快;业务复杂类API用手写REST代码方式

REST用到的HTTP概念

  • REST API – HTTP Payload:只用到JSON、XML两种Content-Type
  • REST API – HTTP Methods:只用到Get、Post、Delete、Put、Patch五种方法
  • REST API – HTTP Status Codes:201是一个特例,重点使用4xx、5xx
  • HTTP User-Agent大全:请求框架使用它表面身份
  • HTTP 请求头大全:API安全会自定义请求头

REST API开发

  • Java 用Spring开发REST API指南
  • Java 用Jersey或RESTEasy开发REST API指南
  • 用Python开发REST API指南
  • 用Php开发REST API指南
  • Go 用Gin开发REST API指南
    –用C#构建REST API指南

REST API开发框架

  • 各语言用于构建Restful API的最受欢迎的框架推荐,包括Java、Ruby、Python、Node.JS、Scala、go
  • 用Java构建REST API的十大流行框架
  • 用Python构建REST API的八大流行框架
    –用Php构建REST API的七大流行框架
    –用C#构建REST API的框架
    –用Go构建REST API的五大流行框架

REST API工具相关的问题

在当今数字化时代,API工具是推动系统和应用之间协同工作的关键,也是提高研发效率的关键抓手,更是实施API战略的必要基础设施。

  • 常用的API设计工具有哪些?
  • 常用的API测试工具有哪些?
  • 常用的API网关(API部署环境)有哪些?
  • 常用的API集成平台(iPASS)有哪些?

Keyword: api是什么