javascript - 为什么我得到一个 "df.worker.min.js” 已加载,即使它的 MIME 类型 (“text/html” 不是有效的 JavaScript MIME 类型”

标签 javascript pdf.js parceljs

我尝试在带有 parceljs 作为 bundler 的小型 typescript 应用程序中使用 pdfjs,但是当我加载 worker 时:

pdfjsLib.GlobalWorkerOptions.workerSrc = '../../node_modules/pdfjs-dist/build/pdf.worker.min.js';

我在 Firefox 控制台中收到此错误:

pdf.worker.min.js” was loaded even though its MIME type (“text/html”) is not a valid JavaScript MIME type

并且 worker 没有加载。

如果我这样加载 worker:

pdfjsLib.GlobalWorkerOptions.workerSrc = `https://cdnjs.cloudflare.com/ajax/libs/pdf.js/${(pdfjsLib as any).version}/pdf.worker.min.js`;

一切正常。

我查看了错误的 MDN 描述,听起来像是服务器端的问题,这是包裹服务器的限制吗?是否有解决方法?

最佳答案

在您的网络服务器上检查该 .js 文件的文件权限。

我有一个类似的问题,加载我的一个 .js 文件失败并且 Firefox 打印消息:

The script from “https://my.website.com/file.js” was loaded even though its MIME type (“text/html”) is not a valid JavaScript MIME type.

Loading failed for the <script> with source “https://my.website.com/file.js”.

所有其他 .js 文件都以正确的内容类型“application/javascript”发送,但这个文件以“text/html”发送。

问题是,在将文件传输到我的网络服务器(使用 FileZilla)时,文件的权限设置为 600。将文件权限设置为 705 修复了它。.js 文件是现在以正确的内容类型发送,Firefox 消息消失了。

关于javascript - 为什么我得到一个 "df.worker.min.js” 已加载,即使它的 MIME 类型 (“text/html” 不是有效的 JavaScript MIME 类型”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55353671/

相关文章:

javascript - 如果在 js 中不使用 'new' 关键字,它会在内存中创建很多函数吗?

javascript - 知道在 Javascript 中按下了什么按钮

javascript - 在嵌入式 pe 上使用 javascript 进行搜索 :documentViewer

javascript - 谷歌浏览器不在 iframe 中显示 PDF 文件

javascript - 将 PDFObject 与 PDF.js 一起使用时隐藏打印按钮

javascript - 如何阻止 ParcelJS 删除构建时的 HTML 注释

javascript - 使用WebStorm测试Angular JS : unresolved function or method inject()

javascript - 为什么 addEventListener 在我的 JavaScript 代码中不起作用

javascript - 避免在 ParcelJS 上的 HTML 文件中重命名 JS 变量

reactjs - 为什么我在启动 React 应用程序时收到错误 "[Error: std::bad_alloc]"?