J'ai implémenté un point de terminaison avec cette signature
[HttpPost("Test")]
public IActionResult MyTest([Required] IFormFile pdf, [Required] IFormFile image)
{
// some stuff...
return Ok();
}
cela génère l'entrée suivante dans swagger.json (la partie pertinente)
"content": {
"multipart/form-data": {
"schema": {
"required": [
"image",
"pdf"
],
"type": "object",
"properties": {
"pdf": {
"type": "string",
"format": "binary"
},
"image": {
"type": "string",
"format": "binary"
}
}
},
"encoding": {
"pdf": {
"style": "form"
},
"image": {
"style": "form"
}
}
}
}
mais, je dois aussi spécifier l'encodage, comme dans les caractéristiques (v3). Donc pour ma tâche, ce JSON devrait ressembler à ceci, je pense...
"encoding": {
"pdf": {
"style": "form",
"contentType": "application/pdf"
},
"image": {
"style": "form",
"contentType": "image/png, image/jpeg"
}
}
Mais comment puis-je faire cela à partir du code ? J'ai pensé à Attribut SwaggerParameter mais il ne contient que la description et le drapeau requis...
J'utilise le paquet Swashbuckle.AspNetCore NuGeT (version 5.0.0-rc2) sur .NET Core 2.2.