如何指定以 swagger 方式返回 pdf?

How to specify that a pdf is returned in swagger?

我在 REST API 中有一个 get 调用需要 return 一个 pdf 文件。没有关于如何在不引起语法错误的情况下执行此操作的明确示例/文档。

  responses:
    200:
      description: Returns PDF
      schema: [application/pdf]

  responses:
    200:
      description: Returns PDF
      schema: 
        type: file

  responses:
    200:
      description: Returns PDF
      schema:
        type:  [application/pdf]

全部失败。这可能吗?

  responses:
    200:
      description: Returns PDF
      schema: 
        type: file

在你给出的选项中,这是正确的选项。另外,请确保使用 produces: [application/pdf]

如果对您来说失败了,请确保您使用的是最新版本的编辑器。最近解决了与 file 类型相关的错误。

使用 Open API 3.0,尝试以下响应:

get:
  summary: Returns the report in the PDF format
  responses:
    '200':
      description: A PDF file
      content:
        application/pdf:
          schema:
            type: string
            format: binary

文档:招摇。io/docs/specification/describing-responses

部分:响应Returns一个文件