情况
使用@nestjs/swagger撰写api文档,本地打包预览正常,上传部署报错:
swagger-ui.css等资源缺失
解法
使用customCssUrl和customJs动态注入资源
const CSS_URL = [
'https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.18.2/swagger-ui.min.css',
];
const JS_URL = [
'https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.18.2/swagger-ui.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.18.2/swagger-ui-bundle.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/5.18.2/swagger-ui-standalone-preset.min.js',
];
SwaggerModule.setup('doc', app, document, {
jsonDocumentUrl: 'doc/json',
customCssUrl: CSS_URL,
customJs: JS_URL,
});
缺点:
- 依旧会报错
- 页面会出来慢一点
有其他解决方案可以分享交流下~
参考: Documentation | NestJS - A progressive Node.js framework