默认情况下,无法发送具有选定值的请求

问题描述

我有一个端点,可让我上传不同类型的体育比赛的统计信息并选择类型。现在,我只能上传曲棍球比赛的统计文件,这就是为什么只有一项添加到选择项的原因。因此,我附加了统计文件,然后按执行按钮,因为选择项只有一项。但是,请求不会通过招摇发送到我的后端。我可以看到选择的边框是红色,出现了问题,但是什么呢?

我将屏幕快照附加到端点视图下方。

enter image description here

我会说在创建此问题之前,我正在研究关于stackoverflow和此处的各种问题。不幸的是,我找不到解决方案。我通读了文档,但结果是一样的。

因此,尽管选择内容现在只有一项,但我希望我能够向后端发送请求以上传统计信息而没有任何问题。

控制器代码

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

我创建了用于复制问题的存储库。 链接https://github.com/AlexeyKorkoza/nestjs-swagger-reproduce-issue

我早些时候发布了该问题,但没有人没有回答。 链接https://github.com/nestjs/swagger/issues/947

任何帮助将不胜感激。预先感谢。

更新

在下午,我已经找到了问题的答案。答复的作者提到此问题与swagger-ui-express软件包有关。但是,我浏览了存储库中的一个活动,发现作者大约几个月没有回答。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)