將 curl 轉換為 MATLAB
curl2code 使用 webwrite 與 webread 將 curl 指令轉換為 MATLAB 程式碼。轉換過程透過 WebAssembly 在您的瀏覽器中執行,確保完全隱私。若需 Python,請參考我們的 curl 轉 Python 轉換器。若需 R,請參閱 curl 轉 R。下方是實用的 MATLAB 範例。
如何從瀏覽器複製 curl
- 1
開啟開發者工具 (DevTools)
按下 F12 或 Ctrl+Shift+I 來開啟您的瀏覽器開發者工具。
- 2
前往網路 (Network) 分頁
點擊 Network 分頁,並執行觸發 HTTP 請求的操作。
- 3
複製為 cURL
右鍵點擊該請求 → Copy → Copy as cURL。然後將其貼在上方。
常見問題解答
什麼是 MATLAB webwrite?
MATLAB 的 webwrite 和 webread 函數提供內建的 HTTP 功能,用於發送和接收數據。它們會自動處理 JSON 序列化並與 MATLAB 的數據類型整合。如需更多控制,請使用 matlab.net.http.RequestMessage。無需安裝工具箱 —— 這些是 MATLAB 核心的一部分。
webwrite vs matlab.net.http — 該使用哪一個?
webwrite/webread 簡單且簡潔 —— 非常適合快速 API 調用和數據檢索。matlab.net.http 則提供對標頭、方法、串流和身份驗證的完整控制。對於標準 REST 調用使用 webwrite,當需要自定義標頭或非標準方法時使用 matlab.net.http。對於數據科學替代方案,請參閱 curl 轉 Python 或 curl 轉 R。
如何在 MATLAB 中處理身份驗證?
使用 weboptions:options = weboptions('HeaderFields', { 'Authorization', 'Bearer token' })。對於 Basic 驗證,使用 weboptions('Username', user, 'Password', pass)。使用 matlab.net.http 時,直接在 HeaderField 物件上設置標頭。curl2code 將驗證標記轉換為適當的 MATLAB 語法。
如何在 MATLAB 中發送 multipart 表單數據?
使用 matlab.net.http.io.MultipartFormProvider 進行檔案上傳。對於較簡單的表單發送,使用 webwrite(url, 'key1', 'value1', 'key2', 'value2')。MATLAB 會根據 MediaType 選項處理序列化。curl2code 將 -F 標記轉換為正確的 MATLAB 模式。
如何在 MATLAB 中處理 HTTP 錯誤?
將調用包裝在 try/catch 中:try response = webread(url, options); catch ME disp(ME.message); end。對於使用 matlab.net.http 的狀態碼檢查,請檢查 response.StatusCode。MATLAB 預設會在網路錯誤和非 2xx 響應時拋出異常。
如何在 MATLAB 中解析 JSON 響應?
webread 會自動將 JSON 解析為 MATLAB 結構體(structs)和元胞陣列(cell arrays)。對於手動解析,使用 jsondecode(jsonString)。使用 jsonencode(data) 將 MATLAB 數據轉換為 JSON。MATLAB 將 JSON 物件映射到結構體,陣列映射到元胞陣列,原始類型映射到其對應的 MATLAB 類型。
如何在 MATLAB 中設置逾時?
使用 weboptions('Timeout', 30) 以秒為單位設置逾時。使用 matlab.net.http 時,配置帶有 HTTPOptions 的 ConnectTimeout。webread/webwrite 的預設逾時為 5 秒。設置為 Inf 表示不限時(不建議用於生產環境)。
如何在 MATLAB 中使用代理?
在 MATLAB 偏好設定中配置代理:首頁 > 偏好設定 > 網頁。或使用 Java 系統屬性:java.lang.System.setProperty('http.proxyHost', 'proxy')。MATLAB 使用 JVM 的網路堆疊,因此 Java 代理設置適用。對於代理驗證,設置 http.proxyUser 和 http.proxyPassword。
如何在 MATLAB 中發送帶有 JSON 主體的 POST 請求?
使用 curl2code 將類似 curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL 的 curl POST 指令轉換為 MATLAB。生成的程式碼使用 response = webwrite(url, data, options)。curl2code 會自動偵測帶有 JSON 內容的 -d/--data 旗標,並在 webwrite 程式碼中設置適當的 Content-Type 標頭。
如何在 MATLAB 中添加 Bearer 權杖授權?
將 curl -H "Authorization: Bearer YOUR_TOKEN" URL 傳遞給 curl2code,它會生成帶有授權標頭的 webwrite 程式碼:options = weboptions('HeaderFields', {'Authorization', 'Bearer TOKEN'})。curl2code 會從 -H "Authorization: Bearer ..." 和 --oauth2-bearer 旗標中偵測 Bearer 權杖。對於 Basic auth,請使用 -u user:pass。
如何在 MATLAB 中設置 Content-Type 標頭?
curl2code 將 curl -H "Content-Type: application/json" URL 轉換為帶有正確標頭的 webwrite 程式碼:options = weboptions('MediaType', 'application/json')。對於 -d 數據,curl 預設為 application/x-www-form-urlencoded;對於 -F 表單上傳,它使用 multipart/form-data。curl2code 會將每一項映射到正確的 webwrite API。