離線 Markdown 鏈接檢查
檢查 Markdown 鏈接、圖片、引用和文檔內標題錨點,不請求目標地址、不執行內嵌 HTML。
報告檢查哪些內容
解析器讀取行內與引用鏈接、自動鏈接、圖片以及原始 HTML 的鏈接和圖片屬性。報告列出每個目標、解析後的 URL、類型和問題代碼,檢查空目標、URL 空白、無效百分號編碼、模板佔位符、不支持的協議和未定義顯式引用。代碼塊與行內代碼不參與檢查。
文檔錨點與基礎 URL
標題錨點採用 github-slugger 2,支持重複標題後綴及中文標題。工具也收集 HTML id 和命名錨點,並報告重複 ID。片段檢查僅針對 #鏈接和解析到同一文檔 URL 的鏈接。可選 HTTP/HTTPS 文檔 URL 用於解析相對路徑,不會請求該地址。
語法結果不代表 HTTP 狀態
syntax-ok 僅表示本地檢查未發現問題。externalStatus 始終為 not-requested:工具不驗證 200/404、DNS、重定向、遠端片段或磁盤上的相對文件。標題 ID 使用本頁說明的本地模型,可能與實際發佈平臺不同。Markdown 在 Worker 內作為文本解析,HTML 不會插入當前頁面。
處理限制
輸入上限為 200,000 個 UTF-16 單位、5,000 個提取鏈接和 100,000 個 HTML 節點。處理可取消,並設 5 秒期限。未定義的 [文字][引用] 會報告;沒有定義的普通 [文字] 可以是正常 Markdown 文本,不會被一律當作錯誤。
常見問題
檢查鏈接會訪問目標網站嗎?
不會。工具不請求輸入目標,也不加載粘貼的圖片、腳本或樣式。
未定義引用與 404 有什麼不同?
未定義引用是文檔語法問題,404 是服務器響應。本工具不請求服務器,報告會明確保留兩者區別。
輸入會上傳或保存嗎?
不會。處理在本機 Web Worker 中進行,不向 API 上傳文本,也不寫入本地存儲。更改選項會取消舊任務並清除舊結果。
其他語言
參考資料
我們如何確保結果正確
我們使用以下自動化測試驗證此工具。下方保留測試案例的原始名稱,方便查看實際斷言及重現。
- 驗證方法
- 檢查內聯、引用、圖片鏈接和本地錨點,核對相對 URL、重複標題和缺失引用。
- 對比依據
- 明確 Markdown/錨點樣本;測試斷言不發起網絡請求。
- 驗證範圍
- 僅校驗文檔內結構;外部鏈接沒有請求時不會聲稱 HTTP 可達。
測試原始碼與案例(點選檔名檢視)
-
markdown-links-tools.test.js
- Markdown inline, reference, autolink and image targets are resolved without network access
- GitHub-style duplicate headings, CJK slugs and explicit HTML anchors are checked
這些測試涵蓋列出的樣本和邊界,不代表所有輸入都已證明正確。往返測試和使用同一依賴套件的檢查,不屬於獨立交叉驗證。