Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

Blob URL does not work on Node.js

未關閉
#30 4 則留言 9 個 reaction 已指派 0 人 在 GitHub 檢視

@msikma 已經在處理了。

開始於 2022年8月8日。

  • #32 來自 @msikma —— 未關閉

評估

難度
3/5
預估耗時
1-2 天
新手友好度
42/100
Issue 類型
缺陷
描述清晰度
基本清楚
活躍度
停滯
技術堆疊
javascript, node.js
領域
backend

研究方向

從 stack trace 中顯示的 Node.js 進入點開始,也就是 cjs/node.js 約第 108 行,並將其 URL 處理方式與 README 對 Worker URL 的說明進行比較。在 Node.js 18 上重現 Blob URL 範例;當範例不再當掉且文件所述的 Blob URL 行為正常運作時,即表示完成。

由索引模型根據 Issue 內容生成。

描述

The readme says:

Worker() accepts a module URL, Blob URL or Data URL

But running the following on Node.js 18 results in a crash:

import Worker from 'web-worker';

const blob = new Blob(['foo'], {type: 'text/javascript'});
const url = URL.createObjectURL(blob);
const worker = new Worker(url, {type: 'module'});
node:internal/errors:466
    ErrorCaptureStackTrace(err);
    ^

TypeError [ERR_INVALID_URL_SCHEME]: The URL must be of scheme file
    at new NodeError (node:internal/errors:377:5)
    at Object.fileURLToPath (node:internal/url:1484:11)
    at new Worker (/Users/sindresorhus/dev/oss/make-asynchronous/node_modules/web-worker/cjs/node.js:108:19)
    at file:///Users/sindresorhus/dev/oss/make-asynchronous/x.js:5:16
    at ModuleJob.run (node:internal/modules/esm/module_job:198:25)
    at async Promise.all (index 0)
    at async ESMLoader.import (node:internal/modules/esm/loader:409:24)
    at async loadESM (node:internal/process/esm_loader:85:5)
    at async handleMainPromise (node:internal/modules/run_main:61:12) {
  code: 'ERR_INVALID_URL_SCHEME'
}
主要語言
JavaScript
星號
1.2k
分支
58
PR 合併指標
30 天內沒有已合併 PR

環境準備

  • 沒有 Dockerfile 或 Docker Compose 檔案
  • 沒有 Pull Request 範本
  • 閱讀貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

developit/web-worker 的其他 Issue

查看 developit/web-worker 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。