首页 > 其他分享 >fastapi swagger文档无法渲染问题

fastapi swagger文档无法渲染问题

时间:2023-10-11 09:57:18浏览次数:38  
标签:fastapi cdn html ui 文档 swagger

  • 由于fastapi默认使用国外的cdn获得支持swagger文档的js和css文件, 所以在国内, /docs接口渲染不出来.

  • 解决方法1

    # 在app生效之前,将生成swagger文档的方法替换掉.(在fastapi为:fastapi.openapi.docs.get_swagger_ui_html)

    from fastapi import FastAPI, applications
    from fastapi.openapi.docs import get_swagger_ui_html

    def swagger_monkey_patch(*args, **kwargs):
       """
      fastapi的swagger ui默认使用国外cdn, 所以导致文档打不开, 需要对相应方法做替换
      在应用生效前, 对swagger ui html做替换
      :param args:
      :param kwargs:
      :return:
      """
       return get_swagger_ui_html(
           *args, **kwargs,
           swagger_js_url='https://cdn.staticfile.org/swagger-ui/4.15.5/swagger-ui-bundle.min.js',  # 改用国内cdn
           swagger_css_url='https://cdn.staticfile.org/swagger-ui/4.15.5/swagger-ui.min.css'
      )


    applications.get_swagger_ui_html = swagger_monkey_patch

    app = FastAPI()

    # 指定swagger支持为3.0.0版本
    app.openapi_version = "3.0.0"
  • 解决方法2

    将swagger-ui-bundle.min.js和swagger-ui.min.css的源码下载下来,做成静态文件.然后配合解决方法1中的方法,将对应url改成静态文件的相对url.

标签:fastapi,cdn,html,ui,文档,swagger
From: https://www.cnblogs.com/CJTARRR/p/17756327.html

相关文章

  • SpringBoot 2.7.x 整合 swagger2 冲突问题
    问题描述SpringBoot2.7.x版本在整合swagger2时抛出异常如下:复制代码org.springframework.context.ApplicationContextException:Failedtostartbean'documentationPluginsBootstrapper';nestedexceptionisjava.lang.NullPointerException atorg.springframework......
  • 运算符-包机制-javaDoc生成文档
    publicclassDemo12{publicstaticvoidmain(String[]args){//与(and)或(or)非(取反)booleana=true;booleanb=false;System.out.println("a&&b:"+(b&&a));//逻辑与运算:两个变量都为真,结果才为trueSystem.......
  • 软件开发项目管理体系,支撑体系,测试体系文档大全
    在软件开发过程中,文档起着至关重要的作用。它不仅记录了项目或产品的基本信息,而且还是团队成员之间沟通的重要媒介。本文将详细介绍软件开发文档的作用、结构、撰写方法以及审校步骤,以帮助读者更好地理解和应用文档在软件开发中的价值。一、认识文档文档是软件开发过程中的产物......
  • 应用系统的相关运维有关的文档 包含哪些分类
    应用系统的相关运维文档通常包括多个分类,以便组织、管理和维护系统的运维信息。以下是常见的应用系统运维文档分类:系统架构和设计文档:系统架构图:系统的结构、组件和关系的图示。系统设计文档:系统的设计原则、流程、数据模型等详细描述。安装与部署文档:安装指南:系统的......
  • “云听”小程序的设计与实现-计算机毕业设计源码+LW文档
    摘 要随着时代的发展我国的移动互联网也逐渐的完善,很是时候人们希望通过移动设备听歌和听一些小说文学作品等内容,但是一些市面上的相关软件要么是收费的,要么是有大量的广告,为了让大家有一个干净的听读环境,我们通过微信小程序开发了本次的”云听”小程序。本基于微信小程序的”......
  • 文档图片的切边与扭曲矫正
     ......
  • swagger2启动报错
    1.添加注解:@EnableSwagger2注解能将swagger的配置文件导入ioc容器,使用容器管理swagger相关的各种核心类,并使我们能通过yml或properties文件能修改默认配置:@Import({Swagger2DocumentationConfiguration.class})public@interfaceEnableSwagger2{}...@EnableSwagger2能......
  • swagger介绍以及使用
    目前的项目基本都是前后端分离,后端为前端提供接口的同时,还需同时提供接口的说明文档。但我们的代码总是会根据实际情况来实时更新,这个时候有可能会忘记更新接口的说明文档,造成一些不必要的问题。说的直白点,swagger就是帮你写接口说明文档的。简单地使用swagger只需要三步。1、......
  • APP QQ快捷登录(文档版)
    一、QQ快捷登录:https://connect.qq.com/   http://open.qq.com/ 先在第二个网站创建安卓和IOS应用、然后进入第一个网站的移动应用界面,点击关联腾讯开放平台,输入在第一个网站中创建好的应用APPID、APPKEY即可; 需要提供:IOS:应用截图、URLschema、AppStoreID、BundleI......
  • css - 脱离文档流
    CSSposition定位&z-index层级1.定位position:(1).相对定位relative:元素相对定位:a.相对于元素在文档流中原本的位置定位的b.不脱离文档流c.如果不设置偏移量,元素不会发生任何变化不改变元素性质(块级/内联元素)(2).绝对定位absolute:绝对定位的元素:a.相对于最近开启......