我正在为我的项目使用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;
}
您找到解决方案了吗?让我知道。