【问题标题】:Google docs viewer with files requiring authorization?带有需要授权的文件的 Google 文档查看器?
【发布时间】:2019-02-05 13:36:38
【问题描述】:

Google 文档查看器是一款相当不错且易于使用的工具。它只需要文件的 路径并呈现文档。它还具有许多附加功能,例如选择页面,旋转等。 但是,有没有办法为获取文件的调用设置一些授权或附加标头?

据我所知,文档网址是这样传递的:

http://docs.google.com/viewer?url=<URL_OF_DOCUMENT>&embedded=true

我认为这非常重要,因为大多数文件都是安全的..

例如,ng-pdf-viewer 可以选择接收对象作为源:

 this.sourceObject = {
     src: this.document.documentLink, 
     httpHeaders: { Authorization: 'Bearer ' + token }
 }

提前致谢:)

【问题讨论】:

标签: javascript pdf google-docs documentviewer


【解决方案1】:

我找到了解决方案!文件应作为 blob 加载:

new Blob([new Uint8Array(response)], { type: 'application/pdf' })

然后应该将 blobUrl 传递给查看器:

this.iframeSrc = `https://docs.google.com/viewer?url=${this.document.blobUrl}&embedded=true`;

【讨论】:

  • 你能详细说明一下吗? Niether URL.createObjectUrl() 也没有数据 url 似乎工作
  • @user3568791 blob url 在谷歌文档查看器中有效吗?
  • 是的,它有效。您必须将 Blob 的类型显式设置为“application/pdf”。
  • 除了帖子作者之外,有没有人真正让它工作?
猜你喜欢
  • 1970-01-01
  • 2019-06-16
  • 2011-07-09
  • 1970-01-01
  • 2011-02-17
  • 2015-05-18
  • 2013-06-25
  • 2013-01-16
  • 1970-01-01
相关资源
最近更新 更多