swagger RESTful API工具

Swagger是一个开源软件框架,它由一个庞大的工具生态系统支持,帮助开发人员设计、构建、记录和使用RESTful web服务。

Swagger允许您使用注释从现有代码生成一流的API文档,或者创建大量的API文档。

Swagger提供三个开源的服务:

使用的场景

有了这三个开源的服务,实际开发的过程中可以实现很多功能,如果能够在在上面做一下开发工作,一个自动化的API接口框架就形成了,而且对于后期这种API项目可以极大的提高开发效率,缩短开发时间,文档写好了,接口也就自动生成了,当然要生成可读可维护的代码还需要我们在生成的过程中做一些转换工作。

  • API接口管理
  • 在线接口调试
  • API文档发布分享
  • 代码自动化

在PHP中集成Swagger

  1. 使用Composer下载Swagger-Php
  2. 添加注释以生成文档
  3. 生成Swagger JSON文件
  4. 下载Swagger-UI包到您的项目中
  5. 将Swagger-UI展示文档

例子

# swagger.yaml
openapi: 3.0.0
info:
  title: 'Search API'
  version: 1.0.0
servers:
- url: 
  description: Current host server
- url: https:your-server.com
  description: Prod server
paths:
  /search:
    post:
      summary: 'Returns most accurate search result object'
      description: 'Search for an object, if found return it!'
      requestBody:
        description: 'Client side search object'
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientSearchObject'
      responses:
        '200':
          description: Success
        '404':
          description: Resource Not Found
components:
  schemas:
    ClientSearchObject:
      type: object
      required:
      - typeName
      properties:
        typeName:
          type: string
        query:
          type: string
4.5
02
PhpRedis vs Predis:谁比较快?
linux: 命令行下查看磁盘的大小
嘻嘻

嘻嘻IT: 笔者是一个工作七八年的程序猿老鸟,从事涉及的技术栈主要包括PHP、Linux、Devops等,喜欢研究新技术,尝试新技术,提升技术自动化和开发效率,致力于write less,do more! 技术每年都会层出不穷,领域划分的越来越细,不可能学习所有的东西,保持对技术的好奇心,理解技术中核心思想,做一个有深度,有思想的开发!

Recent Posts

Robots.txt文件详解

Robots.txt是一个位于…

7小时 ago

为什么接收不到SMS-Activate的短信?

SMS-Activate是一个…

22小时 ago

Linux中你必须知道的5个压缩命令

Linux系统具有丰富的包和解…

2天 ago

Shell脚本定时执行的三种方法

Shell脚本是Unix和Li…

2天 ago

Linux中你必须知道的5个解压缩命令

Linux操作系统中有许多强大…

2天 ago

Golang如何实现三元表达式?

三元表达式又被称为条件表达式,…

2天 ago