Maison > Article > développement back-end > Comment renvoyer des fichiers à partir d’une API Web ASP.NET Core ?
Le retour de fichiers à partir d'une API Web ASP.NET Core peut être difficile, car le comportement par défaut entraîne souvent la sérialisation du HttpResponseMessage au format JSON. Pour résoudre ce problème, nous devons utiliser une approche différente.
Dans l'extrait de code fourni, l'interface IActionResult doit être utilisée pour renvoyer un type ActionResult dérivé. En renvoyant un FileStreamResult, nous pouvons spécifier le type de contenu et le nom du fichier à télécharger.
<code class="csharp">[Route("api/[controller]")] public class DownloadController : Controller { [HttpGet("{id}")] public async Task<IActionResult> Download(string id) { Stream stream = await GetStreamBasedOnIdAsync(id); if (stream == null) return NotFound(); return File(stream, "application/octet-stream", $"{filename}.ext"); } }</code>
Dans ce code mis à jour :
Cette méthode garantit que HttpResponseMessage contient le type de contenu correct et le nom du fichier, permettant des téléchargements de fichiers transparents à partir de votre API Web.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!