cURL 解析器
將 cURL 命令解析為結構化元件。擷取 URL、方法、標頭、主體、驗證資訊,並產生 JavaScript fetch() 與 axios 對等程式碼。
無效的 cURL
如何使用 cURL 解析器
貼上 cURL 命令
從瀏覽器開發者工具複製 cURL 命令(在請求上按右鍵選擇「Copy as cURL」),然後貼上到輸入區域。
解析元件
命令會自動拆解為 URL、方法、標頭、主體、授權與 Cookie。
取得程式碼
複製產生的 fetch() 或 axios 程式碼,用於您的 JavaScript 專案。
什麼是 cURL?
cURL(Client URL)是一個用於使用各種協定傳輸資料的命令列工具與函式庫。它廣泛應用於測試 API、除錯 HTTP 請求與自動化資料傳輸。瀏覽器開發者工具可以將網路請求匯出為 cURL 命令,方便分享與重現 HTTP 請求。
命令列工具
cURL 是一個命令列工具,支援 HTTP、HTTPS、FTP 等多種協定傳輸資料。
瀏覽器 DevTools 匯出
大多數瀏覽器開發者工具支援右鍵網路請求並「複製為 cURL」以取得完整命令。
程式碼轉換
將 cURL 命令轉換為 JavaScript fetch() 或 axios 程式碼,方便整合到 Web 應用中。
常見問題
是的。本工具將 cURL 命令轉換為 JavaScript fetch() 與 axios 程式碼片段。產生的程式碼保留了原始 cURL 命令中的 URL、方法、標頭與主體。
是的。它解析 -d/--data、--data-raw 與 --data-binary 旗標,包括 JSON 承載資料。JSON 主體資料在產生的程式碼中會自動格式化為適當的縮排。
常用旗標包括 -X(方法)、-H(標頭)、-d(資料)、-b(Cookie)、-u(驗證)、-k(不安全)、-L(跟隨重新導向)、--compressed 等。複雜或不常見的旗標可能無法完全解析。
此工具會將旗標對應到 PHP 的 curl API:URL 填入 CURLOPT_URL,每個 -H 填入 CURLOPT_HTTPHEADER,-d 填入 CURLOPT_POSTFIELDS,而 -u 填入 CURLOPT_USERPWD。貼上命令、複製產生的程式碼片段,樣板程式碼(RETURNTRANSFER、錯誤處理)都會自動幫你產生。
-H 'Content-Type: application/json' 會新增一個標頭;每個額外標頭都重複使用 -H,全部都會一併送出。-H 也可以移除標頭,方式是只寫名稱不給值(-H 'User-Agent:');若要送出空值,則在結尾加上分號。多個 -H 旗標會保留順序,這對少數 API 來說很重要。
HTTP Basic 使用 -u user:password(curl 會以 base64 編碼後放進 Authorization 標頭)。Bearer 權杖以標頭傳送:-H 'Authorization: Bearer <token>'。API 金鑰則視服務而定,可能放在標頭或查詢參數中。注意:命令列上的機密會留在 shell 歷史記錄中——建議改用 netrc 檔案或環境變數。
-d 以 application/x-www-form-urlencoded 傳送資料並移除換行;--data-binary 原封不動地傳送資料內容,這正是 JSON API 所需要的;-F 則建立 multipart/form-data 請求,是檔案上傳唯一的選擇。GET 式參數可將 -G 與 -d 搭配使用,把資料移到 URL 查詢字串中。
通常是引號問題:shell 會在 curl 看到之前先剝除引號,但目標語言會重新解讀它們——在 shell 中安全的單引號,在 JavaScript 中需要不同的處理方式。其他陷阱還包括:多行命令的行尾反斜線、URL 中的百分比符號在某些語言會破壞 % 格式化,以及 -b/-c 參照的 cookie 檔案在新環境中不存在。