Skip to content

Commit 97809e5

Browse files
authored
Merge pull request #81 from buzzerrookie/gh-77
Add documentation about file upload for springdoc 2
2 parents ff7d711 + a671dc9 commit 97809e5

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

src/docs/asciidoc/faq.adoc

+29
Original file line numberDiff line numberDiff line change
@@ -572,6 +572,35 @@ public OpenApiCustomizer customerGlobalHeaderOpenApiCustomizer() {
572572

573573
=== Is file upload supported ?
574574
* The library supports the main file types: `MultipartFile`, `@RequestPart`, `FilePart`
575+
* You can upload a file as follows:
576+
577+
[source,java]
578+
----
579+
import io.swagger.v3.oas.annotations.Parameter;
580+
import io.swagger.v3.oas.annotations.media.Content;
581+
import io.swagger.v3.oas.annotations.media.Encoding;
582+
import io.swagger.v3.oas.annotations.parameters.RequestBody;
583+
584+
@PostMapping(value = "/upload", consumes = {MediaType.MULTIPART_FORM_DATA_VALUE})
585+
public ResponseEntity<?> upload(@Parameter(description = "file") final MultipartFile file) {
586+
return null;
587+
}
588+
589+
@PostMapping(value = "/uploadFileWithQuery", consumes = {MediaType.MULTIPART_FORM_DATA_VALUE})
590+
public ResponseEntity<?> uploadFileWithQuery(@Parameter(description = "file") @RequestPart("file") final MultipartFile file,
591+
@Parameter(description = "An extra query parameter") @RequestParam String name) {
592+
return null;
593+
}
594+
595+
@PostMapping(value = "/uploadFileWithJson", consumes = {MediaType.MULTIPART_FORM_DATA_VALUE}, produces = {
596+
MediaType.APPLICATION_JSON_VALUE})
597+
public ResponseEntity<?> uploadFileWithJson(
598+
@RequestBody(content = @Content(encoding = @Encoding(name = "jsonRequest", contentType = MediaType.APPLICATION_JSON_VALUE)))
599+
@Parameter(description = "An extra JSON payload sent with file") @RequestPart("jsonRequest") final JsonRequest jsonRequest,
600+
@RequestPart("file") final MultipartFile file) {
601+
return null;
602+
}
603+
----
575604

576605
=== Can I use `@Parameter` inside `@Operation` annotation?
577606
* Yes, it's supported

0 commit comments

Comments
 (0)