当前位置: 首页 > article >正文

fastapi 的css js文件地址修改

from fastapi.openapi.docs import get_swagger_ui_html, get_redoc_html

点进get_swagger_ui_html修改源码

def get_swagger_ui_html(
    *,
    openapi_url: str,
    title: str,
    # swagger_js_url: str = "https://cdn.jsdelivr.net/npm/swagger-ui-dist@3/swagger-ui-bundle.js",
    # swagger_css_url: str = "https://cdn.jsdelivr.net/npm/swagger-ui-dist@3/swagger-ui.css",
    swagger_js_url: str = "https://cdn.staticfile.org/swagger-ui/5.1.0/swagger-ui-bundle.js",
    swagger_css_url: str = "https://cdn.staticfile.org/swagger-ui/5.1.0/swagger-ui.css",
    swagger_favicon_url: str = "https://fastapi.tiangolo.com/img/favicon.png",
    oauth2_redirect_url: Optional[str] = None,
    init_oauth: Optional[Dict[str, Any]] = None,
) -> HTMLResponse:

    html = f"""
    <!DOCTYPE html>
    <html>
    <head>
    <link type="text/css" rel="stylesheet" href="{swagger_css_url}">
    <link rel="shortcut icon" href="{swagger_favicon_url}">
    <title>{title}</title>
    </head>
    <body>
    <div id="swagger-ui">
    </div>
    <script src="{swagger_js_url}"></script>
    <!-- `SwaggerUIBundle` is now available on the page -->
    <script>
    const ui = SwaggerUIBundle({{
        url: '{openapi_url}',
    """

第二种方法
在app=FastAPI(…)之前粘贴下面代码,可以修改swagger js css 引用路径

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


def swagger_monkey_patch(*args, **kwargs):
    """
    Wrap the function which is generating the HTML for the /docs endpoint and
    overwrite the default values for the swagger js and css.
    """
    return get_swagger_ui_html(
        *args, **kwargs,
        swagger_js_url="https://cdn.staticfile.org/swagger-ui/4.15.5/swagger-ui-bundle.min.js",
        swagger_css_url="https://cdn.staticfile.org/swagger-ui/4.15.5/swagger-ui.min.css")


# Actual monkey patch
applications.get_swagger_ui_html = swagger_monkey_patch

# app = FastAPI(title="xxx",..................)

http://www.kler.cn/a/272382.html

相关文章:

  • 【LeetCode: 215. 数组中的第K个最大元素 + 快速选择排序】
  • 智能创造的幕后推手:AIGC浪潮下看AI训练师如何塑造智能未来
  • LDD3学习8--PCI/PCIE驱动(TODO)
  • Linux(DISK:raid5、LVM逻辑卷)
  • Java 8 Optional类
  • Qt Desiogn生成的ui文件转化为h文件
  • 第 126 场 LeetCode 双周赛题解
  • 设计原则、工厂、单例模式
  • 程序人生——Java异常使用建议
  • el-select使用filterable下拉无法关闭得问题
  • react03
  • Java推荐算法——特征加权推荐算法(以申请学校为例)
  • 合并两个有序链表
  • RabbitMQ命令行监控命令详解
  • Redis7学习记录(1)
  • 2024-3-17Go语言入门
  • macOS Ventura 13.6.5 (22G621) Boot ISO 原版可引导镜像下载
  • 通俗易懂的Python循环讲解
  • LeetCode Python - 59. 螺旋矩阵 II
  • 使用 GitHub Actions 通过 CI/CD 简化 Flutter 应用程序开发
  • 矩阵中移动的最大次数
  • 基于粒子群算法的分布式电源配电网重构优化matlab仿真
  • 谈谈IC、ASIC、SoC、MPU、MCU、CPU、GPU、DSP、FPGA、CPLD的简介
  • C语言自学笔记8----C语言Switch语句
  • Redis-复制功能
  • Spring web MVC(2)