2011-11-26 28 views
4

我期待通过WCF将Azure Blob存储流直接返回给浏览器。 基本上我有一个REST WCF服务,我希望有用户通过服务下载文件,而这些文件存储在Azure Blob存储中。直接从WCF服务返回Azure Blob流

在这个问题上

Returning Azure BLOB from WCF service as a Stream - Do we need to close it?

它,但是我喜欢它下载整个文件到一个新的物流第一,有没有办法让斑流从WCF使WCF返回流更像是流的代理?

我的问题是大文件(> 10MB),我真的不想从Azure存储中下载整个流,然后才能开始将其返回给用户。

我这样做的原因是我在对用户进行一些安全检查之前,我将允许访问存储在Azure Blob存储中的文件,还有一些文件的大小可能高达1GB 。

回答

5

我已经做了类似的地方,WCF用于授权客户端(并检查blob仍然存在等)。如果一切正常,WCF服务返回一个带有共享访问签名的URL - 这允许客户端直接从存储访问流。节省将blob拉到wcf角色然后从那里流式传输的交易成本。

可能为您工作?

+0

是的,经过一番搜索后,我得出了同样的结论,这是一个比代理更优雅的解决方案。感谢您的确认。 –