首页 > 解决方案 > 尝试使用 pdf.js 时,我收到一个跨域请求被阻止

问题描述

我尝试使用 pdf.js 读取本地 pdf 文件。

我添加了这个脚本标签:

<script src="https://cdn.jsdelivr.net/npm/pdfjs-dist@2.8.335/build/pdf.min.js">       </script>

我得到了这个简单的 console.log 来看看它是否有效:

<script>pdfjsLib.getDocument('livret-Krismenn.pdf').then(doc => {
        console.og('this file has ' + doc._pdfInfo.numPages +        'pages')
    })  </script>

但事实并非如此。

我的浏览器(firefox)给出的原因:CORS请求不使用http。

我查了一下,找到了解决方案:

Access-Control-Allow-Credentials: true

但我不知道该怎么办......

我怎样才能解决这个问题?

标签: htmlpdf.js

解决方案


问题是由于安全问题,您无法直接从本地系统读取文件。您需要运行一个简单的 Web 服务器来加载 pdf 文件形式。您提到的此选项应设置在网络服务器端而不是您的端。尝试运行 npm 提供的简单静态网络服务器,...

您还可以使用FileReaderapi 读取系统上的文件。


推荐阅读