0

我想知道是否可以在浏览器中打开存储在 Azure Blob 帐户中的 Excel 文件(或任何 Office 文件),或者更好的是嵌入网页中。有点像预览功能,而不是总是提示用户下载文件。我知道这可以通过将文件存储在 Sharepoint 或 OneDrive 中并使用它的嵌入功能来轻松完成,但我试图避开这些,因为我们已经实现了 blob 存储。

我一直在搜索,但大多数结果只引导我到 Sharepoint/OneDrive。

任何帮助,将不胜感激。:)

编辑 (2014-07-14)

根据下面 RGregg 的建议,我尝试研究创建自定义 WOPI 主机,我认为它完全符合我的需要。但我想我错过了一些东西。我无法运行预览。我总是收到“找不到服务器”错误。我尝试用officeapps.live.com/hosting/discovery替换指向owa1.wingtip.com的旧发现文件,它现在一直到 Word Online 的加载图像,但它卡在那里。真的找不到其他材料来解释如何使它工作,并且它没有显示任何错误。

GetFile我还尝试通过实现所需的和CheckFileInfo方法来创建自己的(试图仅通过基础来简化所有内容) 。它成功地检索了文件和信息,但我仍然无法将它与 Web 应用程序集成。我想我错过了很多东西,但我无法弄清楚。:(

4

2 回答 2

1

我认为将后端转换为 Office 365 或 OneDrive 比让您的 blob 存储解决方案与 Office 应用程序一起使用更容易,但我认为您需要做的是实现 WOPI 主机,如本文所示:http://code.msdn.microsoft.com/office/Building-an-Office-Web-f98650d6。这至少会让您达到 Excel Web App 可以从您的 blob 存储加载文件的程度。

于 2014-07-08T04:26:42.260 回答
1

我最近才发现有关 Google Doc Preview 的信息。基本上,您只需要文档的在线 URL 并将其附加到:

https://docs.google.com/viewer?url=

并将其放入 iframe 中。为了完整性:

<iframe src="http://docs.google.com/viewer?url=http://<blobServer>/<filename>&embedded=true" width="600" height="780" style="border: none;"></iframe>

它已经在 IFrame 上提供了某种“打印预览”,因此在为更漂亮的视图创建文档时,您必须牢记分页。它也不需要你有任何谷歌帐户来访问它。

我仍然有一些问题:

  1. 安全。不需要帐户 = 安全性较低。
  2. 不能很好地渲染图表。我有一个饼图,它显示为一个完整的实心圆。
  3. 根本不渲染过滤器,因此......
  4. 与 OneDrive 的嵌入不同,不提供交互性。

但是,这仍然回答了这个问题,所以我把它贴在这里给任何寻找解决方案的人。:)

仍然欢迎任何答案。:)

于 2014-08-28T10:31:52.743 回答