我有一个 JavaScript 应用程序,它对文件进行客户端加密和解密,将加密数据存储在 Google Cloud Storage 中。所有加密和数据传输的东西都能正常工作,但我无法让所有文档类型在 Chrome 中打开。由于 Chrome 的内置 PDF 查看器,PDF 可以正常工作,但我也希望它能够自动打开其他文件类型。例如:
JavaScript 应用程序检索加密数据,然后对其进行解密以生成包含 Word 文档的字符串或字节数组。
我创建了一个数据 URI 并在其上调用 window.open()。在 PDF 情况下,将打开一个带有 PDF 文档的新选项卡。当数据 URI 是 Word 文档(MIME 类型 application/vnd.openxmlformats-officedocument.wordprocessingml.document)时,我得到一个(显然)没有内容的空白窗口。
我已经能够使用数据 URI 创建一个 <A> 标记,如果用户右键单击该链接,它会下载正确的数据,但是虽然我已将该 MIME 类型设置为在下载时自动打开,但 Chrome 不会打开它。(它会自动打开从具有该 MIME 类型的常规 HTTP 请求发送的 Word 文档。)
我想对我的解密数据做几件事,从客户端 JavaScript 字符串开始:
- 在新选项卡/窗口中打开(浏览器可以做的事情,或者有插件)
- 在外部应用程序中打开
- 另存为文件
对这些有帮助吗?
谢谢!