Swagger 它';默认情况下,无法使用所选值发送请求
我有一个端点,允许我上传不同类型体育比赛的统计数据并选择类型。现在,我只能上传曲棍球比赛的统计文件,这就是为什么只有一个项目被添加到选择。因此,我附加统计文件并按下execute按钮,因为select只有一项。但是,请求不会通过swagger发送到我的后端。我可以看到select的边框是红色的,有些地方出了问题,但是什么呢 我将截图附在端点视图下方。 我想说,在创建本期之前,我已经浏览了stackoverflow和here的各种问题。不幸的是,我找不到解决办法。我通读了文档,但结果是一样的 因此,我希望我能够发送一个请求到我的后端上传统计数据没有任何问题,尽管选择现在只有一个项目 控制器代码:Swagger 它';默认情况下,无法使用所选值发送请求,swagger,nestjs,swagger-ui,nestjs-swagger,Swagger,Nestjs,Swagger Ui,Nestjs Swagger,我有一个端点,允许我上传不同类型体育比赛的统计数据并选择类型。现在,我只能上传曲棍球比赛的统计文件,这就是为什么只有一个项目被添加到选择。因此,我附加统计文件并按下execute按钮,因为select只有一项。但是,请求不会通过swagger发送到我的后端。我可以看到select的边框是红色的,有些地方出了问题,但是什么呢 我将截图附在端点视图下方。 我想说,在创建本期之前,我已经浏览了stackoverflow和here的各种问题。不幸的是,我找不到解决办法。我通读了文档,但结果是一样的 因
import {Controller, Post, UseInterceptors} from '@nestjs/common';
import {
ApiBody,
ApiCreatedResponse,
ApiConsumes,
} from '@nestjs/swagger';
import {FileInterceptor} from "@nestjs/platform-express";
import { AppService } from './app.service';
import { SportDto } from './sport.dto';
import { ResponseDto } from './response.dto';
@Controller('sports')
export class AppController {
constructor(private readonly appService: AppService) {}
@Post()
@ApiCreatedResponse({
type: ResponseDto,
})
@ApiConsumes('multipart/form-data')
@ApiBody({
type: SportDto,
})
@UseInterceptors(FileInterceptor('file'))
postHello() {
return {
message: 'Success',
};
}
}
车身dto代码:
import {ApiProperty} from "@nestjs/swagger";
import {TypeSportEnum} from "./type-sport.enum";
export class SportDto {
@ApiProperty({ enum: TypeSportEnum })
typeSport: TypeSportEnum;
@ApiProperty({ type: 'string', format: 'binary' })
stats: any;
}
枚举代码:
export enum TypeSportEnum {
HOCKEY = 'HOCKEY',
}
main.ts代码:
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
const options = new DocumentBuilder().setVersion('1.0').build();
const document = SwaggerModule.createDocument(app, options);
SwaggerModule.setup('api', app, document);
await app.listen(3000);
}
bootstrap();
以下是有关我的环境的信息:
Nest version: 7.5.1
Node version: 12.16.3
Platform: Windows
Operating system version: Windows 10 Pro
OS build: 19041.450
IDE: Webstorm 2020.1.4
Package manager: yarn, 1.22.4
我创建了一个存储库,在那里我复制了我的问题。
链接:
早些时候我发布了这个问题,但没有人回答。
链接:
任何帮助都将不胜感激。提前谢谢
更新
下午,我在创建的问题中得到了答案。回复的作者提到,这个问题与
swagger-ui-express
软件包有关。但是,我查看了存储库中的一个活动,发现作者大约几个月没有回答。在swagger ui express
包的作者用左评论结束我的问题后,我在swagger ui存储库()中创建了这个问题