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 

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 功能
  • 请求定义、请求示例
  • 响应定义、响应示例
  • 唯一标识
Apifox 的 API 管理

Apifox 的自动化测试

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

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

Mock 功能

Apifox 支持 Mock 功能,定义完接口响应之后,通过本地 Mock 功能可得到 Mock 数据

Mock 功能

点击 发送,即可获取 Mock 数据

Mock 数据

导出导入 OpenAPI

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

导入数据
导出数据

关于 Apifox

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

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

Apifox