Используя asp.net core web api, я хочу, чтобы мой метод действия контроллера возвращал поток изображений jpeg.
В моей текущей реализации браузер отображает только строку json. Я ожидаю увидеть изображение в браузере.
При отладке с помощью инструментов разработчика Chrome я обнаружил, что тип контента все еще
Content-Type:application/json; charset=utf-8
возвращается в заголовке ответа, хотя в моем коде я вручную установил тип содержимого «image / jpeg».
Ищу решение. Мой веб-API выглядит следующим образом.
[HttpGet]
public async Task<HttpResponseMessage> Get()
{
var image = System.IO.File.OpenRead("C:\\test\random_image.jpeg");
var stream = new MemoryStream();
image.CopyTo(stream);
stream.Position = 0;
result.Content = new StreamContent(image);
result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment");
result.Content.Headers.ContentDisposition.FileName = "random_image.jpeg";
result.Content.Headers.ContentType = new MediaTypeHeaderValue("image/jpeg");
result.Content.Headers.ContentLength = stream.Length;
return result;
}