【问题标题】:NSWAG Angular client generation IFormFile issuesNSWAG Angular 客户端生成 IFormFile 问题
【发布时间】:2019-11-22 21:42:27
【问题描述】:

版本:

  • Asp.Net 2.2
  • Swashbuckle v5.0.0 rc2

我在使用 NSWAG 生成 Angular 客户端时遇到问题。我正在使用 OAS 3.0。问题在于在我的 API 中使用 IFormFile 作为参数。

这是我的终点:

public async Task<object> UploadTest(IFormFile file) { }

使用 OAS 3 时,nswag 将在客户端代码中生成上述端点的“IFileFormat”参数作为“Blob”。

sample(body?: Blob | undefined): Observable<ObjectCommonApiResponse>;

使用 OAS 2 时,nswag 将在客户端代码中生成上述端点的“IFileFormat”参数作为“FileParameter”。

sample(file?: FileParameter | null | undefined): Observable<ObjectCommonApiResponse>;

也许我遗漏了一些东西,但我不知道如何将我的文件变成“Blob”,这似乎没有用,所以我可以将它传递给服务。另一方面,当它是 'FileParameter' 类型时,使用 OAS 2,我可以用我自己的类扩展 'FileParameter' 接口并将其发送进去,它会按预期工作。

【问题讨论】:

  • 你好@mluker,有关于这个问题的消息吗?
  • @HusamZidan 不,我在生成 swagger 文件时只使用了 v2。

标签: angular swagger nswag


【解决方案1】:

这就是您如何将File 数组转换为FileParameter 中的TypeScript 之一:

const files: FileParameter[] = this.files
  ? this.files.map(i => {
    let fileParameter: FileParameter = { data: i, fileName: i.name };
    return fileParameter;
  })
  : null;

【讨论】:

    猜你喜欢
    • 2021-01-15
    • 2021-12-21
    • 1970-01-01
    • 1970-01-01
    • 2021-11-18
    • 1970-01-01
    • 2020-04-11
    • 2021-07-27
    • 2018-11-09
    相关资源
    最近更新 更多