applyDocfyMetadata(document, options?)
把 nestjs-docfy CLI 插件在构建时生成的元数据,合并进一份已经构建好的 OpenAPI 文档。
用法
在 SwaggerModule.createDocument() 之后立刻调用它,位于手动运行 patch-spec 时合并结果的同一个生命周期节点上,只是这里是每次构建自动执行,不是单独的 CLI 步骤。完整说明见 CLI 插件,包括如何在 nest-cli.json 中注册它。
ts
import { NestFactory } from '@nestjs/core';
import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
import { applyDocfyMetadata } from 'nestjs-docfy';
const app = await NestFactory.create(AppModule);
const document = SwaggerModule.createDocument(app, new DocumentBuilder().build());
SwaggerModule.setup('api', app, applyDocfyMetadata(document));
await app.listen(3000);选项
| Option | Type | Default | Description |
|---|---|---|---|
metadataPath | string | docfy-metadata.json 入口文件旁边 | 插件写出的元数据文件的绝对路径。 |
strict | boolean | false | 元数据文件缺失或无法解析时直接抛出异常,而不是发出警告。行为对应 DocfyModule.forRoot({ strict })。 |
Fail-open by default
如果找不到元数据文件(比如插件没有在 nest-cli.json 中注册),它会发出警告并原样返回文档,和 DocfyModule.forRoot() 的失败开放默认行为一致。