Google Docs Viewer与Office Online无法通过ngx-doc-viewer预览S3预签名URL文档
用ngx-doc-viewer预览S3预签名URL文档的问题
已尝试操作
- 生成S3预签名URL并在浏览器中测试,可正常访问;
- 将编码后的预签名URL传入ngx-doc-viewer使用Google Docs Viewer:
var encodedUrl = encodeURIComponent(presignedUrl); var iFrameUrl = 'https://docs.google.com/viewer?url=' + encodedUrl + '&embedded=true';
错误提示:No Preview Available;
- 尝试使用Microsoft Office Online:
var iFrameUrl = 'https://view.officeapps.live.com/op/view.aspx?src=' + encodedUrl;
错误提示:File is not publicly accessible;
- 测试ngx-doc-viewer内置URL查看器选项,文件直接下载而非预览,说明文件可访问但查看器无法正常工作。
曾找到一篇讨论相同问题的博客,其通过encodeURIComponent()编码预签名URL解决问题,但该方案对我无效。
问题
- 为何URL可访问,但Google Docs Viewer和Office Online仍无法预览S3预签名文件?
- 是否有人成功通过上述服务在ngx-doc-viewer中预览S3预签名URL?
- 是否存在无需文件完全公开即可支持私有S3 URL的替代文档查看器?
期待各位的见解!
内容的提问来源于stack exchange,提问作者Heisenberg
相关产品推荐
相关产品推荐

