проблема
Я хочу вернуть файл в свой контроллер веб-API ASP.Net, но все мои подходы возвращают его HttpResponseMessage
как JSON.
Код на данный момент
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;
}
Когда я вызываю эту конечную точку в своем браузере, веб-API возвращает HttpResponseMessage
файл в формате JSON с HTTP-заголовком содержимого, установленным на application/json
.
return File(stream, "application/octet-stream", "filename.xlsx");
таким образом, когда он загружается, пользователь может открыть его напрямую.