如何使用pdf.js获取客户端存储的pdf的文本内容?

时间:2015-02-22 01:13:43

标签: javascript xmlhttprequest pdf.js

我正在开发一个需要使用pdf.js阅读pdf的网络应用程序。我的页面上有一个文件输入选择文件。我有document.getElementById("...").value作为pdf的网址。当我运行它时,它说:

“XMLHttpRequest无法加载c:\ fakepath \ vocab_list_15_8th_grade.pdf。只有协议方案支持交叉源请求:http,数据,chrome,chrome-extension,https,chrome-extension-resource。 敬畏:1未处理的承诺拒绝承诺{[[PromiseStatus]]:“拒绝”,[[PromiseValue]]:UnknownErrorException}“

我想这是因为文件存储在本地。我该如何解决这个错误?

1 个答案:

答案 0 :(得分:2)

这与pdf.js本身并没有任何关系。 pdf.js恰好正在尝试使用XMLHttpRequest加载文件。

问题是你给了pdf.js一个本地文件(c:\fakepath\vocab_list_15_8th_grade.pdf)的路径。出于安全原因,您的Web浏览器不会让网页加载本地文件,即使该网页也是本地的。解决这个问题的方法就是在本地运行包含Web应用程序和PDF的Web服务器。

如果你安装了Python,你可以通过运行来轻松地完成这项工作:

$ python -m SimpleHTTPServer

...来自您要提供的目录。

但它看起来像你在Windows上(从您路径中的C:\判断)。我不知道在没有安装Python的情况下在Windows上运行简单Web服务器的最简单方法。