我正在使用webApi 2作为我的应用程序。我有画廊,我需要一种方式来显示我的图像。我搜索了很多,发现了一些这样的文章:
http://www.dotnetcurry.com/aspnet/1120/aspnet-webapi-binary-contents-images
https://jamessdixon.wordpress.com/2013/10/01/handling-images-in-webapi/
但他们似乎没有一种有效的方式。
所以我决定再次提出这个问题。如何在web api 2中处理我的图像?
什么是最好的方法?
答案 0 :(得分:0)
如果没有关于您的用例的更多信息,很难知道最佳方式是什么。通常会使用formatter。然后你的客户端将发出两个请求,/ api / Images来获取你的所有图像,然后为每个图像创建正确的视图(HTML将是)。需要一个接受扩展的路由和一个格式化程序来返回正确的内容类型和二进制数据。您的控制器可以执行所有二进制流,但格式化程序可以提供更好的灵活性。
至于BSON,我从未使用过BSON。我们的API有很多不同的客户端,JSON对我们的DTO来说是通用的。对于图像,我们总是使用纯二进制流的响应体。这样,每个客户端都不需要进行自定义解析。我们可以通过使用正确的内容类型,内容长度等完全依赖HTTP规范。这也允许范围请求,因此我们可以使用简历进行流式传输和部分下载。我毫不怀疑BSON将会流行,我们将来可能会使用它,但是现在它不适合我们的用例。