我的react应用程序使用的是ffmpeg.wasm (https://github.com/ffmpegwasm/ffmpeg.wasm),但由于SharedArrayBuffer的“最近”问题,我不得不将项目移到ffmpeg.js (https://github.com/Kagami/ffmpeg.js)。
这就是我的问题。我安装库(npm i ffmpeg.js),并尝试使用github页面上为web工作者提供的简单代码来测试它是否正常工作:
const worker = new Worker("ffmpeg-worker-webm.js");
worker.onmessage = function(e) {
const msg = e.data;
switch (msg.type) {
case "ready":
worker.postMessage({type: "run", arguments: ["-version"]});
break;
case "stdout":
console.log(msg.data);
break;
case "stderr":
console.log(msg.data);
break;
case "done":
console.log(msg.data);
break;
}
};但是onmessage方法从不调用get,而是调用
GET https://localhost:3000/ffmpeg-worker-webm.js 403 (Forbidden)我刚接触网络工作者这个话题,我找不到足够多的文章来讨论这个问题(事实上,大多数文章都使用了和我完全相同的代码,显然它适用于他们)。这个问题是本地主机特有的,还是一个ReactJS问题,我根本无法使用ffmpeg.js库?有人能指导我如何解决这个问题吗?
发布于 2021-10-15 16:35:29
似乎/ffmpeg-worker-webm.js对您的web服务器不可用,如果您使用的是webpack,请确保您单独捆绑它或使用fileLoader,或者更改new Worker("ffmpeg-worker-webm.js")您希望这个文件放在哪里
另外请记住,如果您想知道您的更改是否在web服务器中起作用,访问https://localhost:3000/ffmpeg-worker-webm.js中的URL应该会给出代码,而不是禁止的响应
https://stackoverflow.com/questions/69016370
复制相似问题