为rest文件提供swaggerui指令,以便使用openapi规范文档构建交互式html页面。

sphinxcontrib-swaggerui的Python项目详细描述


https://travis-ci.org/sphinx-contrib/sphinxcontrib-swaggerui.svg?branch=master

为rest文件提供swaggerui指令以构建交互式驱动 由Swagger-UI小组介绍 您的OpenAPI规范文档。

概述

这个sphinx扩展对于那些发布一个交互式文档来展示他们的api规范的人是必要的。 与openapi兼容,并希望为此目的使用众所周知的swagger ui工具。 swaggerui指令使您能够将此类交互式面板嵌入rest文件的任意位置。

sphinx指令swaggerui

安装

$ pip install sphinxcontrib-swaggerui

配置

在sphinx项目配置文件config.py中,添加已安装的扩展名:

extensions = [...,
    'sphinxcontrib.swaggerui',
    ...]

该指令还意味着您使用\u static/文件夹中的静态内容,并将其配置为:

html_static_path = ['_static']

rest文件中的指令

首次测试指令时,请使用以下示例配置:

.. swaggerui:: ../_static/swaggerui/petstore.yaml                                 # *) Required
   :url: https://unpkg.com/swagger-ui-dist@3/swagger-ui-bundle.js               # *) Required
   :css: ../_static/swaggerui/swagger-ui.css                                      # *) Required
   :script: https://unpkg.com/swagger-ui-dist@3/swagger-ui-standalone-preset.js # Optional

属性(例如,../_static/swagger/petstore.yaml)引用您的本地yaml或json文件 OpenAPI格式。路径必须相对于包含指令的文档。

指令使用以下选项:

  • url指的是基于cdn(内容交付网络)的招摇过市的ui包。有关脚本的正确版本,请参阅 到UNPKGcdn。脚本名必须是swagger-ui-bundle.js
  • css指的是本地的swagger ui css文件。路径必须相对于包含指令的文档。 您可以在UNPKGcdn中找到合适的css文件。
  • script引用了一个附加脚本(建议使用上面示例中的脚本)。为了一个正确的版本 脚本,引用UNPKGcdn。脚本名必须 是swagger-ui-standalone-preset.js。可能,您会发现另一个脚本可以使用main 由:url:选项指定的swagger ui脚本。

注意

一。这个包包含petstore.yamlswagger-ui.css文件(在上面的示例中提到) 在sphinx首次使用指令期间复制到_static/swaggerui/文件夹。 因此,当您指定到该文件夹的相对路径时,不需要复制这些文件;示例文件 无论您是否使用它们,都会自动出现在其中。

  1. 您可能需要使用自己的css文件编辑css样式。

css自定义示例

避免操作块标记消失:

h4.opblock-tag a.nostyle {
   opacity: 1
}

拆下摇杆顶部:

.swagger-ui .topbar {
   display: none;
}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android Java在活动之间传递值   java当实体中存在关系时,我可以只使用实体的id而不是从DB中获取实体吗?   bouncycastle Java运行SSHD服务器错误未找到类定义   java SWT/Swing>Threads n'Hell   java多线程数据库读取   java如何在Eclipse中轻松提交Git   java在哪里可以找到字符串相等比较的一组特定排序规则?   无连接表的java单向单域关系   java扩展三角文件   java spring。杰克逊。序列化。failonemptybeans   java无法加载请求的类:oracle。jdbc。驾驶员OracleDriver   java通过数组进行索引循环并打印出元素?   找不到eclipse错误类中的java提交Hadoop作业   Java:随机设定种子   java片段、异步任务和侦听器   java在分号后使用{}