plugins¶
- class litestar.openapi.plugins.OpenAPIRenderPlugin¶
基类:
ABCOpenAPI UI 渲染插件的基类。
- __init__(*, path: str | Sequence[str], media_type: MediaType | OpenAPIMediaType = MediaType.HTML, favicon: str = "<link rel='icon' type='image/png' href='https://cdn.jsdelivr.net/gh/litestar-org/branding@main/assets/Branding%20-%20PNG%20-%20Transparent/Badge%20-%20Blue%20and%20Yellow.png'>", style: str = '<style>body { margin: 0; padding: 0 }</style>') None¶
初始化 OpenAPI UI 渲染插件。 Args: path: 提供 OpenAPI UI 的路径。 media_type: 处理器的媒体类型。 favicon: 用于 favicon 的 HTML <link> 标签。 style: HTML 主体的基础样式。
- static render_json(request: Request, openapi_schema: dict[str, Any]) bytes¶
将 OpenAPI 模式渲染为 JSON。 Args: request: 触发渲染的请求。 openapi_schema: 作为字典的 OpenAPI 模式。 Returns: 渲染后的 JSON。
- abstractmethod render(request: Request, openapi_schema: dict[str, Any]) bytes¶
渲染 OpenAPI 用户界面。 Args: request: 触发渲染的请求。 openapi_schema: 作为字典的 OpenAPI 架构。 Returns: 渲染后的 HTML。
- static get_openapi_json_route(request: Request) str¶
获取 OpenAPI JSON 模式的路由。 Returns: OpenAPI JSON 模式的路由。
- class litestar.openapi.plugins.RapidocRenderPlugin¶
-
使用 Rapidoc 渲染 OpenAPI 模式。
- __init__(*, version: str = '9.3.4', js_url: str | None = None, path: str | Sequence[str] = '/rapidoc', **kwargs: Any) None¶
初始化 OpenAPI UI 渲染插件。 Args: version: 从 CDN 下载的 RapiDoc 版本。如果提供了 js_url,则忽略此参数。 js_url: RapiDoc JS 捆绑包的下载 URL。如果未提供,则使用 version 来构建 URL。 path: 提供 OpenAPI UI 的路径。 **kwargs: 传递给基类的其他参数。
- class litestar.openapi.plugins.RedocRenderPlugin¶
-
使用 Redoc 渲染 OpenAPI 模式。
- __init__(*, version: str = 'next', js_url: str | None = None, google_fonts: bool = True, path: str | Sequence[str] = '/redoc', **kwargs: Any) None¶
初始化 OpenAPI UI 渲染插件。 Args: version: 从 CDN 下载的 Redoc 版本。如果提供了 js_url,则忽略此参数。 js_url: Redoc JS 捆绑包的下载 URL。如果未提供,将使用 version 来构建 URL。 google_fonts: 通过 CDN 下载 Google 字体。如果不使用 CDN,应设置为 False。 path: 提供 OpenAPI UI 的路径。 **kwargs: 传递给基类的其他参数。
- class litestar.openapi.plugins.ScalarRenderPlugin¶
-
使用 Scalar 渲染 OpenAPI 架构的插件。 .. versionadded:: 2.8.0
- __init__(*, version: str = 'latest', js_url: str | None = None, css_url: str | None = None, path: str | Sequence[str] = '/scalar', options: dict[str, Any] | None = None, **kwargs: Any) None¶
初始化 Scalar OpenAPI UI 渲染插件。 Args: version: 要从 CDN 下载的 Scalar 版本。 如果提供了 js_url,则忽略此参数。 js_url: Scalar JS 捆绑包的下载 URL。 如果未提供,将使用 version 来构建 URL。 css_url: Scalar CSS 捆绑包的下载 URL。 如果未提供,将使用 Litestar 提供的 CSS。 path: 提供 OpenAPI UI 的路径。 options: Scalar 配置选项。 如果未提供,将使用默认的 Scalar 配置。 **kwargs: 传递给基类的其他参数。
- class litestar.openapi.plugins.StoplightRenderPlugin¶
-
使用 StopLight Elements 渲染 OpenAPI 模式。
- __init__(*, version: str = '7.7.18', js_url: str | None = None, css_url: str | None = None, path: str | Sequence[str] = '/elements', **kwargs: Any) None¶
初始化 OpenAPI UI 渲染插件。 Args: version: 要从 CDN 下载的 StopLight Elements 版本。如果提供了 js_url,则忽略此参数。 js_url: StopLight Elements JS 捆绑包的下载 URL。如果未提供,将使用 version 来构建 URL。 css_url: StopLight Elements CSS 捆绑包的下载 URL。如果未提供,将使用 version 来构建 URL。 path: 提供 OpenAPI UI 的路径。 **kwargs: 传递给基类的其他参数。
- class litestar.openapi.plugins.SwaggerRenderPlugin¶
-
使用 Swagger-UI 渲染 OpenAPI 模式。
- __init__(version: str = '5.18.2', js_url: str | None = None, css_url: str | None = None, standalone_preset_js_url: str | None = None, init_oauth: dict[str, Any] | bytes | None = None, path: str | Sequence[str] = '/swagger', **kwargs: Any) None¶
初始化 OpenAPI UI 渲染插件。 Args: version: 要从 CDN 下载的 SwaggerUI 版本。如果提供了 js_url,则忽略此参数。 js_url: Swagger UI JS 捆绑包的下载 URL。如果未提供,将使用 version 来构建 URL。 css_url: Swagger UI CSS 捆绑包的下载 URL。如果未提供,将使用 version 来构建 URL。 standalone_preset_js_url: Swagger Standalone Preset JS 捆绑包的下载 URL。如果未提供,将使用 version 来构建 URL。 init_oauth: 通过调用
initOAuth方法初始化 Swagger UI OAuth2 的 JSON 数据。 详细信息请参阅以下 URL: Swagger-UI。 oauth2_redirect_url: Swagger UI 提供的oauth2-redirect.html页面的绝对 URL。 设置此值后,该值将作为oauth2RedirectUrl传递给SwaggerUIBundle配置, 覆盖 Swagger UI 默认根据当前页面位置计算 URL 的行为。 当 API 挂载在子路径下且自动计算的 URL 不正确时,此参数非常有用。 path: 提供 OpenAPI UI 的路径。 **kwargs: 传递给基类的其他参数。
- render(request: Request, openapi_schema: dict[str, Any]) bytes¶
为 Swagger-UI 渲染 HTML 页面。 Notes: - 重写此方法以自定义模板。 Args: request: 请求对象。 openapi_schema: 作为字典的 OpenAPI 模式。 Returns: 渲染后的 HTML 字符串。
- class litestar.openapi.plugins.YamlRenderPlugin¶
-
将 OpenAPI 模式渲染为 YAML。