使用asp.net核心Web API,我想有我控制器操作方法返回一个JPEG图像流。
在我目前的实现中,浏览器只显示一个json字符串。 我的期望是在浏览器中看到图像。返回JPEG图像的WebAPI
在使用Chrome开发者工具调试我发现,内容类型仍然是
Content-Type:application/json; charset=utf-8
在响应头回来,即使我的代码手动设置内容类型为“image/JPEG” 。
寻找一个解决方案我的Web 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;
}
这不能工作。 – Ben