Latihan 1 dari materi curl — Deep Dive di Terminal — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Tulis parseCurlCommand(cmd) yang parse perintah curl sederhana dan return object berisi: method, url, headers (object), data (string atau null).
Aturan:
-X METHOD → set method (default "GET")
-H "Key: Value" → tambah ke headers
-d '...' atau -d "..." → set data (implies method "POST" jika belum di-set)
URL adalah argumen pertama yang bukan flag dan bukan argumen flag
Asumsikan input sudah ter-tokenize sebagai array dengan quoted string sebagai satu token.
Hint
Iterate tokens dengan index. Kalau token === "-X" → method = tokens[++i]. Kalau "-H" → split header next token by ":" dan masukkan ke headers. Kalau "-d" → data = tokens[++i], set methodIfUnset = "POST".
URL = token pertama yang bukan "-X/-H/-d" DAN bukan argumen flag (skip posisi setelah flag). Gunakan boolean flag "skipNext" atau hitung argument flag-nya.
Return object { method: method || "GET", url, headers, data: data || null }. Pastikan headers diinisialisasi {} dan method default "GET" jika tidak di-set.
HyperSheets
bagian dari BelajarWeb.dev
🔄
Memperbarui Aplikasi
Versi baru tersedia. Halaman akan dimuat ulang otomatis...