Проблема загрузки файла Swagger OpenAPI v3 (SpringBoot) - PullRequest
0 голосов
/ 03 мая 2020

Нужна помощь с загрузкой файлов с использованием реализации Swagger OpenAPI v3.

Я не могу понять, как вернуть фактическое содержимое файла обратно в ответ через мой контроллер. Это буквально просто без использования OpenAPI, но здесь я должен использовать метод переопределения, сгенерированный через интерфейс OpenAPI.

Когда я попадаю на конечную точку, файл загружается, но в нем нет содержимого.

Если кто-нибудь когда-либо сталкивался с этим, я хотел бы услышать их мнение.

Файл Swamger yaml:

 responses:
        '200':
          description: OK
          content:
            application/octet-stream:
              schema:
                type: string
                format: base64

Контроллер пружинной загрузки:

 @Override
    public ResponseEntity<String> getFile(String storageIdentifier) throws IOException {

        return ResponseEntity.ok().contentType(contentType(extension.get().toString()))
                .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" + filename + "\"")
                .body(new String(bytearray));
    }  

Когда я вижу документацию Swagger API, он предлагает использовать type: string and format: binary (для возврата файла) или type: string and format: base64 (для возврата строки)

...