为什么 Chrome 不允许 Web Workers 在 JavaScript 中运行?

2024-01-02

如果我尝试通过 JavaScript 文件使用 Web Worker,Chrome 会抛出错误 -

未捕获的安全错误:无法创建工作程序:无法从源“null”访问“(path)/worker.js”处的脚本。

但如果我们直接通过 HTML 使用,它就允许它们。

答案关于Chrome 无法加载 Web Worker https://stackoverflow.com/questions/21408510/chrome-cant-load-web-worker说 Chrome 不允许您在从本地文件运行脚本时加载 Web Worker。

为什么 Chrome 不允许 Web Worker 在本地运行?

Web Workers 在 Firefox、Safari 和 Edge 中工作得完全正常


这个问题已经被问过。工人should只要您使用,就可以处理从磁盘打开的 HTML 文件相对路径。然而,chrome 是否正确实现了这一点一直存在争议。

我建议您尝试在脚本中使用相对路径:

new Worker("./scripts/worker.js");

如果这不起作用,请参阅此解决方法:https://stackoverflow.com/a/33432215/607407 https://stackoverflow.com/a/33432215/607407

具体来说,将worker加载为函数,然后将函数转换为字符串:

function worker_function() {
    // all worker code here
}
var worker = new Worker(URL.createObjectURL(new Blob(["("+worker_function.toString()+")()"], {type: 'text/javascript'})));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Chrome 不允许 Web Workers 在 JavaScript 中运行? 的相关文章

  • 显示带有背景颜色的百分比条

    例如 如果我有一个包含两列和 2 行的表 Col1 Percentage 50 50 70 70 如何用代表 COl1 值的颜色填充百分比列 像这样的东西 您可以使用具有两个紧接着的停止点的线性渐变 percentageFill heigh
  • 光滑的旋转木马不工作

    我一直在尝试简单地实现 Slick Carousel 的工作 我已按照 Git 页面上的说明进行操作 https github com kenwheeler slick https github com kenwheeler slick 这
  • 单击输入字段会触发窗口调整大小

    我有一个带有徽标 菜单和搜索的标题 当我在桌面上时 我会按该顺序显示所有元素 但如果我的窗口宽度小于 980 像素 菜单会隐藏 有一个切换按钮 并且徽标会与nav并附在徽标之后 如果宽度更大 则徽标将再次分离并附加到 DOM 中的旧位置 w
  • 如何在一段特定时间后在后台运行 ajax 调用? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在一段特定的时间后显示警报消息 您想继续吗 如果用户同意 则 ajax 调用必须在后台运行 否则取消 ajax 调用 那么请告诉我
  • 离子旋转器未显示

    我用 http 请求填充 Ionic 集合重复列表 但我不想将所有内容直接加载到 DOM 中 因此 我只显示其中一些项目 并在您向下滚动时添加其余项目 为此我实现了无限滚动功能 当我到达页面底部时 它应该显示一个旋转器 但它没有 这些物品至
  • 更新 Google 地图流量层而无需重新加载页面

    我的页面中嵌入了 Google 地图 我使用 initMap js 函数来初始化地图 function initMap var map new google maps Map document getElementById t map zo
  • EJS在JS onload函数中访问express变量

    我知道你可以像这样获取 ejs 文件中变量的值 h1 h1 如果我要在同一个 ejs 页面的 onload javascript 函数中使用相同的标题变量 我将如何使用它 例如 这个函数产生一个控制台错误说 未捕获的语法错误 意外的标识符
  • AngularJS 输入字段未从控制器内的 setTimeout 更新

    我正在使用 AngularJS 支持的页面 并且我需要在只读输入文本字段内显示正在运行的时钟 与data ng model 为了模拟运行的时钟 我使用了 JavaScript 调度程序setTimeout每 1000 毫秒调用一个函数 该函
  • 从网站存储数据的最简单方法(在服务器端)

    我有一个非常简单的网站 实际上是单页 有一个输入字段和一个按钮 我需要将用户提交的数据存储在服务器端的某个位置 完美的方法可能是简单的文本文件 并在每次单击按钮后附加新行 日志文件也可以 据我了解 JavaScript 本身是不可能的 我在
  • 删除 Laravel Mix 中的临时文件

    我想在 laravel mix 构建期间或之后删除临时构建文件 这是我目前拥有的一些代码 但是del不工作 const mix require laravel mix const del require del compile sass i
  • 在 jQuery AJAX 成功中从 MySql 获取特定响应

    好吧 我有这个 ajax 代码 它将在 Success 块中返回 MySql 的结果 ajax type POST url index php success function data alert data My Query sql SE
  • 通过 jQuery 从输入类型=“文件”多个中删除文件

    我在使用 PHP 和 jQuery 上传文件时遇到问题 表单可以一次上传多个图像 这些图像可以在滑块中预览 表单还包含两个字段标题和描述 滑块通过 jQuery 工作 当用户通过单击选择文件来选择多个图像时
  • 带时间戳的 Firestore 查询

    如果它是文本字段 我可以使用 where 条件获取数据 但是当我尝试对时间戳字段和日期执行相同操作时 事情不起作用 这是我的代码 home ts firebase firestore collection cities where time
  • 浏览器默认区域设置 - Intl.DateTimeFormat 与 navigator.language

    在对网站进行编码并格式化日期时 我想使用用户在浏览器中设置的区域设置 例如 如果用户定制了他们的chrome settings languages在 Chrome 中设置为非默认值 这就是我想要使用的值 但是 当我在此类浏览器的控制台中运行
  • HTML 和 JavaScript - 将滚动操作从一个元素传递到另一个元素

    假设我有两个 div div div div A scrollable list div 我想让它当光标停在里面时 control并且鼠标滚轮滚动 view将会滚动 无论如何要实现这一目标 好的 快速修复对我有用 即使固定 div 不可滚动
  • xpath:选择中断标签之前和之后的文本节点

    考虑以下因素 混合 br and br text1 br text2 br text3 br text4 br text5 如何找到每个文本节点 我正在考虑符合 br 标签之前或之后的条件的东西 但不确定是否 br and br 在 xpa
  • 如何生成 JavaScript 堆栈跟踪? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 关于如何以跨浏览器的方式在 javascript 中生成堆栈跟踪有什么建议吗 较新的浏览器 Chrome 和 Firefox 公开了一个允
  • 文本后面有粗下划线

    如何使用 span 和 css 在文本 ABC 后面重现这种下划线 我已经能够做下划线below嵌套的文本span和彩色的border bottom 但无法获取behind图像和above文本基线 p style font size 48p
  • 如何从配置加载套接字 io 事件监听器? [复制]

    这个问题在这里已经有答案了 我有使用套接字io 的nodejs 应用程序 我将存储在 config routes js 中的所有事件侦听器 module exports routes auth login controller auth a
  • openssl_pkey_get_details($res) 不返回公共指数

    我在用着这个例子 https stackoverflow com a 12575951 2016196使用 php 生成的密钥进行 javascript 加密openssl图书馆 但是 details openssl pkey get de

随机推荐

  • XML 文件的长度

    我有一个大小为 31 GB 的 XML 文件 我需要找到该文件中的总行数 我知道命令wc l会给我同样的 但是执行此操作花费的时间太长 有没有更快的机制来查找大文件中的行数 31 gigs 是一个非常大的文本文件 我打赌它会压缩到大约 1
  • 输入数字字段时移动浏览器上“输入/下一个”键的行为

    我这里有一行代码 不涉及表单
  • 如何在 OpenOffice 中进行简单的邮件合并

    我需要使用 C VBScript VB Net 或 C 通过 OLE 或本机 API 在 OpenOffice 中进行简单的邮件合并 有什么好的例子吗 我还没有想出一个令我非常满意的解决方案 但这里有一些注意事项 问 什么是用于邮件合并的
  • 将列表转换为 Pandas Dataframe 列

    我需要将列表转换为单列 pandas 数据框 当前列表 len 3 Thanks You Its fine no problem Are you sure 所需的 Pandas DF 形状 3 0 Thank You 1 Its fine
  • statsmodels ARIMA 结果与原始数据的比较

    我有一个包含季节性成分的时间序列 我安装了 statsmodels ARIMA model tsa arima model ARIMA data 8 1 0 fit 例如 现在 我了解到 ARIMA 与我的数据存在差异 我如何比较结果 pr
  • 从 git 命令获取 JSON,例如 git status

    如果我运行这个命令 git status I get On branch master Your branch is up to date with origin master nothing to commit working direc
  • WPF绑定以更改椭圆的填充颜色

    如何以编程方式更改 XAML 中基于变量定义的椭圆的颜色 我读到的关于绑定的所有内容都是基于集合和列表 我不能根据字符串变量的值简单地 字面意思 设置它吗 字符串颜色 红色 颜色 FF0000 值得指出的是 其他帖子引用的转换器已经存在 这
  • 如何调试类型级程序

    我正在尝试进行一些类型级别的编程 但它不起作用 我正在绞尽脑汁地试图弄清楚为什么 GHC 完全无法推断出我想要的类型签名 有什么方法可以制作GHC吗tell me它在做什么 I tried ddump tc 它只打印出最终的类型签名 是的
  • MySQL GROUP BY 和填充空行

    我确信之前已经回答过这个问题 但我找不到我需要的详细信息 对于分析系统 我需要能够对行进行分组并将它们返回到图表上 或者按minute 小时 日 月或年 我的工作正常 下面的示例代码 SELECT COUNT DISTINCT user i
  • .htaccess 首先检查 cookie,然后检查有效用户

    我的 apache 服务器上的目录有一个 htaccess 文件 目前 这使用 mod auth mysql 进行用户验证以查看目录列表 但是 如果用户已经登录到我的应用程序 因此存在 cookie 我想跳过有效用户要求 从而消除多次登录
  • ASP.NET MVC 4 RC Web API 参数绑定问题

    我在 ASP NET MVC 4 RC Web API 中遇到了一个奇怪的绑定问题 我有一种方法旨在接受客户端的发布请求 问题是 当调用 post 方法时 没有任何参数绑定 我到达了抛出行上的断点 并且名称 电子邮件均为空 如果我在 Jav
  • 使用 jQuery + ERB 在视图中获取 6:Fixnum (Rails) 的未定义方法“gsub”?

    我正在尝试将一些 jQuery ERB 添加到特定视图 views posts show html erb 文件顶部 h2 posts show h2 etc div class div
  • std::make_shared 是否执行值初始化(GCC 和 clang 不同意)?

    我的意思可以用下面的例子来解释 auto p std make shared
  • 如何在 iPad 中解析 XML 文件时处理 CDATA 标签

    我正在开发一个应用程序 需要解析一些包含 CDATA 标签的 XML 文件 解析普通 xml 非常简单 但我在检索 CDATA 标记内的数据时遇到问题 The parser foundCDATA 为遇到的每个 CDATA 标记调用方法 其中
  • Sidekiq Perform_later 无法与操作电缆一起使用

    我在我的应用程序中设置了基本的有线聊天功能 我有一个 after create commit 回调 它将消息发送到要广播到适当通道的作业 当设置为perform now时它可以正常工作 但当设置为perform later时则不起作用 Si
  • 将两个变量相除得到 NaN

    我正在学习 JavaScript 我当前的代码似乎适用于总价值 但我无法让我的部门代码发挥作用来显示每人的成本是多少 这似乎是问题所在 document getElementById costeach innerHTML Price eac
  • Android 浅色/深色主题操作栏文本

    我正在我的 Playground Android 应用程序中实现深色主题 并且正在努力将操作栏文本颜色设置为白色 下面是我的风格和颜色 操作栏的背景遵循 colorPrimary 这很棒 然而 两种颜色 浅色和深色 都是非常深色的颜色 并且
  • Android,从不同的活动在缓存中保存和加载位图

    我有一个需要在新活动中显示的位图 因此我对其进行缓存 并在打开的活动中尝试加载它 但出现 nullPointerException 我在这里保存图像 File cacheDir getBaseContext getCacheDir File
  • 如何压缩谷歌驱动器中的文件?

    有什么方法可以将大文件压缩成谷歌驱动器中较小的 zip 或 tar gz 文件吗 我试过谷歌应用脚本 https stackoverflow com questions 13259041 creating a zip file inside
  • 为什么 Chrome 不允许 Web Workers 在 JavaScript 中运行?

    如果我尝试通过 JavaScript 文件使用 Web Worker Chrome 会抛出错误 未捕获的安全错误 无法创建工作程序 无法从源 null 访问 path worker js 处的脚本 但如果我们直接通过 HTML 使用 它就允