OpenAPI入门指南

本文将为您提供 OpenAPI 入门教程,从规范介绍和工具使用,让你轻松掌握 API 开发规范。

用 Apifox,节省研发团队的每一分钟

OpenAPI入门指南

免费使用 Apifox

相关推荐

最新文章

API

一体化协作平台

API 设计

API 文档

API 调试

自动化测试

API Mock

API Hub

立即体验 Apifox
目录

OpenAPI 入门指南

OpenAPI 是什么

OpenAPI 规范,也就是 OAS,它与编程语言无关。这使得计算机和人类用户都能够识别和理解服务功能,而无需额外的文档、访问源代码或检查网络流量。OAS 消除了调用服务的猜测,类似于接口描述简化较低级别编程的方式。使用 OpenAPI,您可以快速发现 API 是如何工作的。OpenAPI 的 API 规范通常是用 YAML 或 JSON 编写的。

OpenAPI入门指南
OpenAPI 

API 优先开发

我们在开发一个项目的时候,最好的做法就是先出接口文档,接口文档涉及了几个很重要的点:

  • 接口的规则
  • 接口的请求、响应

只有先出了接口文档,才能很好地保证前端、后端的协同开发统一性、规范性。我觉得 API 文档应该是整个代码开发的基础,通过制定的接口规则来进行交互编写,才更加稳定高效,也就是所谓的 API-Frist。

 

OpenAPI 规范

OpenAPI 的规范,一开始就是 Swagger 的规范,只不过经过了 Reverb Technologies 和 SmartBear 等几个公司多年的维护,OpenAPI 开始有了属于自己的规范,更详细可以看:OpenAPI 规范(中文版)

 

OpenAPI 的规范是与语言无关的,这样才能保证 OpenAPI 规范的通用性,普及性,OpenAPI 一般通过 JSON 或 YAML 这种通用型语言来进行导入导出,保证通用性。

 

OpenAPI 3.0.1 的版本文档,OpenAPI 文档中的对象包括:

对象描述是否必需
OpenAPI Object整个 OpenAPI 文档对象
Info Object描述文档信息的对象
Paths Object描述接口路径的对象
Components Object描述组件的对象
Tag Object对路径进行分组的对象
ExternalDocs Object拓展文档对象
Security Object安全性对象
Servers Object描述服务端的对象

比如以下是一个 Info Object 的示例:

openapi: 3.0.1
servers:
  # Added by API Auto Mocking Plugin
  - description: SwaggerHub API Auto Mocking
    url: https://virtserver.swaggerhub.com/xxx/books/1.0.0
info:
  version: "1.0.0"
  title: home-iot-api
  description: The API for the EatBacon IOT project

比如以下是一个 Paths Object 的示例:

paths:
  /devices:
    get:
      tags:
        - Device
      description: returns all registered devices
      operationId: getDevices
      parameters:
        - in: query
          name: skip
          description: number of records to skip
          schema:
            type: integer
            format: int32
        - in: query
          name: limit
          description: max number of records to return
          schema:
            type: integer
            format: int32
      responses:
        '200':
          description: All the devices
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  format: uri
                  example: 'http://10.0.0.225:8080'

使用 Apifox 管理 OpenAPI API

Apifox 是一款集 API文档、API管理、API测试于一身的超级多功能 API 工具,日常用 Apifox 来管理 OpenAPI 的 API 项目,那是再合适不过了~

 

Apifox 的 API 管理

Apifox 的 API 管理功能很齐全,包括

  • 接口数管理
  • operationID
  • Mock 功能
  • 请求定义、请求示例
  • 响应定义、响应示例
  • 唯一标识
OpenAPI入门指南

Apifox 的自动化测试

Apifox 的自动化测试也很完善,功能包括

  • 测试用例:可以测试多个接口或接口用例
  • 测试套件:可以测试多个测试用例
  • 可以设置循环数、延迟书、环境、线程数等参数进行运行
  • 支持导出测试报告
  • 支持查看单个接口的测试结果
  • 支持查看测试结果的详细参数
OpenAPI入门指南
OpenAPI入门指南

Mock 功能

Apifox 支持 Mock 功能,定义完接口响应之后,通过本地 Mock 功能可得到 Mock 数据,点击 发送,即可获取 Mock 数据。

OpenAPI入门指南

导出导入 OpenAPI

Apifox 支持导出导入 OpenAPI,如果你想要进行 API 项目迁移的时候,可以考虑下这个功能,能让你以最低的成本,去进行项目迁移

OpenAPI入门指南

 

关于 Apifox

  • 集成了 API 文档、API 调试、API Mock、API 自动化测试 API 一体化协作平台
  • 拥有更先进的 API 设计/开发/测试工具
  • Apifox = Postman + Swagger + Mock + JMeter

欢迎体验一下,完全免费的哦:在线使用 Apifox

Apifox 新版
Apifox