Аннотировать с swagger для Multipart / form-data - PullRequest
1 голос
/ 14 марта 2020

Я использую Swagger 2.0 и OpenAPI 3 для своего проекта. Я хочу аннотировать конечные точки для ввода запроса Multipart / form-data (прикрепляет 2 файла, полезную нагрузку и метаданные), где один файл может быть xml или json, а другой должен быть строго в json. Я попытался следующий код, анализируя ввод, получая MediaType обоих файлов String. Кроме того, я хочу добавить настраиваемую информацию заголовка, например, «UserID» = «xyz321»

class Employee{
                @Post
                @Path("/update")
                @Operation(summary="upload a file", description="it's multipart input request",
                requestBody=@RequestBody(
                                content=
                                     @Content( mediaType="multipart/form-data",
                                     schema=@Schema(implementation=MultiRequest.class),
                                     encoding=@Encoding(
                                     name="payload",
                                     contentType="application/json, application/xml"))))
                Response updateEmpRecords(MultiPart multiPart){
                //business logics
                String ID=?;//get User ID from header of the request
                return null;
                }


                 }

    classMultiRequest {
        @Schema(type = "string", format = "binary", description = "payload")
        public String file;
        @Schema(description = "metadata")
        public MetaData metadata;
}
...