簡體   English   中英

如何在接受 Flux 的 swagger-ui (spring doc) 中添加文件上傳按鈕<bytebuffer> ?</bytebuffer>

[英]How to add button for file upload in swagger-ui (spring doc) which accepts Flux<ByteBuffer>?

我使用 spring 文檔 1.6.12:

<spring-doc.version>1.6.12</spring-doc.version>
...
<dependency>
  <groupId>org.springdoc</groupId>
  <artifactId>springdoc-openapi-webmvc-core</artifactId>
  <version>${spring-doc.version}</version>
</dependency>
<dependency>
  <groupId>org.springdoc</groupId>
  <artifactId>springdoc-openapi-webflux-ui</artifactId>
  <version>${spring-doc.version}</version>
</dependency>
<dependency>
  <groupId>org.springdoc</groupId>
  <artifactId>springdoc-openapi-data-rest</artifactId>
  <version>${spring-doc.version}</version>
</dependency>
<dependency>
  <groupId>org.springdoc</groupId>
  <artifactId>springdoc-openapi-security</artifactId>
  <version>${spring-doc.version}</version>
</dependency>

我有以下 controller 方法:

  @PostMapping(produces = "application/hal+json")
  @ResponseStatus(code = HttpStatus.CREATED)
  public Mono<ResponseEntity<MyDTO>> upload(
      @RequestBody Flux<ByteBuffer> data,
      @RequestHeader(name = CONTENT_LENGTH) long contentLength,
      @RequestHeader(name = CONTENT_TYPE, required = false) MediaType contentType,
      @RequestHeader(name = CONTENT_DISPOSITION) @ContentDispositionConstraint ContentDisposition contentDisposition,
      @RequestParam(name = "archive", required = false, defaultValue = "false") boolean archive,
      @RequestParam(name = "folder", required = false) @Pattern(regexp = FOLDER_PATTERN) String folder,
      @RequestParam(name = "folderOwner", required = false) String folderOwner,
      @RequestParam(value = "folderUuid", required = false) UUID folderUuid,
      @RequestParam(name = "expirationDate", required = false) Instant expirationDate,
      JwtAuthenticationToken jwtToken,
      ServerHttpRequest request) {

在 swagger ui 中我看到:

在此處輸入圖像描述

所以我沒有上傳文件的按鈕。 有辦法實現嗎?

聚苯乙烯

如果我改變

@RequestBody Flux<ByteBuffer> data

@RequestPart ("file") MultipartFile data,

我在 swagger 中看到上傳按鈕,但底層代碼取決於Flux<ByteBuffer> data ,所以我不想更改它。

我認為如果您使用@Schema,它將被顯示。

@Schema(type = "string", format = "binary") @RequestBody Flux<ByteBuffer> data

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM