使用Web Api将图像渲染到浏览器

时间:2012-08-01 04:21:04

标签: http asp.net-web-api

我想使用webapi渲染图像,以便我可以包含电子标签或许多其他用于缓存目的。并且可以基于设备呈现不同尺寸的图像。

我写过一个格式化程序,它接受“image / jpeg”,它正确呈现; y与fiddler接受。但是浏览器标签会将接受标头发送为“星/星”,这只是一个媒体范围。无论如何,可以发送标题或使用web api

呈现图像的任何其他方式

1 个答案:

答案 0 :(得分:2)

在评估接受标头值时,我们会根据它们的具体程度对它们进行排名。也就是说,

Accept: image/jpeg

排名高于

Accept: image/*

排名高于

Accept: */*

如果您有一个控制器的多个格式化程序并且您只获得一个 / 接受标头,那么我们会选择列表中可以序列化特定体型的第一个格式化程序。

解决此问题的最简单方法是在添加自己的格式化程序之前,通过清除列表来删除HttpConfiguration中的其他格式化程序。

您也可以使用每个控制器样式配置在每个控制器的基础上执行此操作,有关此方案的更多详细信息,请参阅[1]。

的Henrik

[1] http://blogs.msdn.com/b/jmstall/archive/2012/05/11/per-controller-configuration-in-webapi.aspx