Problème
Je souhaite renvoyer un fichier dans mon contrôleur d'API Web ASP.Net, mais toutes mes approches renvoient le HttpResponseMessage
sous forme de JSON.
Code jusqu'à présent
public async Task<HttpResponseMessage> DownloadAsync(string id)
{
var response = new HttpResponseMessage(HttpStatusCode.OK);
response.Content = new StreamContent({{__insert_stream_here__}});
response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
return response;
}
Lorsque j'appelle ce point de terminaison dans mon navigateur, l'API Web renvoie le en HttpResponseMessage
tant que JSON avec l'en-tête de contenu HTTP défini sur application/json
.
return File(stream, "application/octet-stream", "filename.xlsx");
cette façon, lors du téléchargement, l'utilisateur peut l'ouvrir directement.