Menggunakan cURL dalam ServBay
cURL ialah alat baris perintah dan pustaka yang sangat berkuasa, digunakan secara meluas untuk memindahkan data melalui pelbagai protokol (seperti HTTP, HTTPS, FTP dan lain-lain). Dalam pembangunan web, cURL merupakan alat yang tidak dapat digantikan, terutamanya untuk membuat permintaan HTTP, memanggil API, memuat turun atau memuat naik fail, serta menguji sambungan perkhidmatan.
Sebagai persekitaran pembangunan web tempatan untuk pembangun, ServBay telah prapasang versi terkini alat cURL sewaktu pemasangan—anda tidak perlu memuat turun atau memasangnya secara berasingan. Ini bermakna anda boleh terus menggunakan arahan curl
dalam terminal yang disediakan oleh ServBay untuk pelbagai ujian dan interaksi rangkaian dengan mudah.
Dokumen ini akan menerangkan secara terperinci bagaimana menggunakan cURL di dalam persekitaran ServBay dan menyediakan beberapa contoh praktikal berserta teknik lanjutan.
Pemasangan & Konfigurasi
Pemasangan cURL
ServBay telah prapasang alat cURL sewaktu pemasangan, jadi anda tak perlu memasangnya secara berasingan. Anda boleh terus menggunakan arahan curl
dalam terminal ServBay.
Untuk mengesahkan sama ada cURL tersedia dan menyemak versinya, anda boleh masukkan arahan berikut dalam terminal ServBay:
bash
curl --version
1
Arahan ini akan memaparkan maklumat versi cURL, senarai protokol yang disokong, dan ciri-ciri yang tersedia, mengesahkan cURL sedia digunakan.
Konfigurasi cURL
Dalam kebanyakan senario penggunaan harian, cURL tidak perlu konfigurasi khas untuk berfungsi. Namun, tingkah lakunya boleh disesuaikan secara terperinci melalui pelbagai parameter baris perintah bagi memenuhi keperluan pemindahan data anda.
Contoh Penggunaan Asas
cURL menyediakan pelbagai pilihan baris perintah untuk tugas pemindahan data. Berikut adalah beberapa contoh asas yang mempamerkan bagaimana menggunakan cURL untuk operasi pembangunan web yang lazim:
Menghantar Permintaan HTTP GET
Menghantar permintaan GET ialah salah satu kegunaan paling biasa cURL, digunakan untuk mendapatkan sumber daripada URL tertentu.
bash
curl -X GET https://api.servbay.demo/data
1
Atau, kerana GET ialah kaedah lalai, anda boleh ringkaskan kepada:
bash
curl https://api.servbay.demo/data
1
Menghantar Permintaan HTTP POST
Permintaan POST sering digunakan untuk menghantar data ke pelayan—contohnya data borang atau payload JSON. Gunakan pilihan -d
(atau --data
) untuk menentukan data yang hendak dikirim.
bash
curl -X POST -d "param1=value1¶m2=value2" https://api.servbay.demo/data
1
Memuat Turun Fail
Memuat turun fail menggunakan cURL sangat mudah. Pilihan -O
akan menyimpan fail dengan nama asal dari pelayan ke direktori semasa.
bash
curl -O https://servbay.demo/file.zip
1
Jika anda mahu menamakan fail tempatan secara spesifik, gunakan pilihan -o
:
bash
curl -o local_filename.zip https://servbay.demo/file.zip
1
Memuat Naik Fail
cURL juga membenarkan anda meniru pemuatan naik fail dengan mudah. Gunakan pilihan -F
(atau --form
) untuk menentukan fail yang ingin dimuat naik, format biasanya adalah name=@/path/to/file
.
bash
curl -X POST -F "file=@/Applications/ServBay/www/servbay.demo/upload/document.pdf" https://api.servbay.demo/upload
1
Sila ganti /Applications/ServBay/www/servbay.demo/upload/document.pdf
dengan laluan sebenar fail yang ingin dimuat naik.
Teknik Penggunaan Lanjutan
Selain fungsi asas, cURL menyokong pelbagai pilihan lanjutan, menjadikannya satu alat rangkaian yang sangat fleksibel.
Menetapkan Header HTTP
Melalui pilihan -H
(atau --header
), anda boleh menambah header HTTP tersuai pada permintaan, berguna untuk menghantar jenis kandungan tertentu (seperti JSON) atau maklumat pengesahan (API key atau Bearer token).
bash
curl -H "Content-Type: application/json" -H "Authorization: Bearer your_token_here" https://api.servbay.demo/data
1
Mengendalikan Data JSON
Dalam pembangunan API moden, JSON ialah format data yang lazim. cURL membolehkan hantaran dan penerimaan data JSON dengan mudah.
Menghantar Data JSON
Semasa menghantar JSON, header Content-Type
perlu diset sebagai application/json
dan data JSON dipass melalui pilihan -d
.
bash
curl -X POST -H "Content-Type: application/json" -d '{"key1":"value1", "key2":"value2"}' https://api.servbay.demo/data
1
Mendapat & Menganalisis Respons JSON (dengan jq)
Respon cURL berbentuk teks mentah. Untuk melihat dan menganalisa output JSON dengan mudah, gunakan alat baris perintah jq
yang berkuasa.
bash
curl -s https://api.servbay.demo/data | jq .
1
Nota: jq
bukan alat terbina dalam ServBay; anda mungkin perlu memasangnya sendiri. Di macOS, jika anda mempunyai Homebrew, boleh gunakan arahan brew install jq
untuk pemasangan. Pilihan -s
pada jq
bermaksud mod senyap (tidak paparkan status atau ralat), supaya hanya badan respons dipaip ke jq
. Maklumat lanjut tersedia di laman rasmi jq.
Mengurus Kuki (Cookies)
cURL membolehkan anda menyimpan serta menghantar kuki, penting untuk menguji aplikasi web yang memerlukan pengurusan sesi.
Menyimpan Kuki ke Fail
Gunakan pilihan -c
(atau --cookie-jar
) untuk menyimpan kuki yang set semasa respons pelayan ke fail tertentu.
bash
curl -c cookies.txt https://servbay.demo
1
Menggunakan Fail Kuki
Untuk menghantar kuki daripada fail dalam permintaan berikutnya, gunakan pilihan -b
(atau --cookie
).
bash
curl -b cookies.txt https://servbay.demo/profile
1
Menggunakan Proksi
Jika anda perlu mengakses rangkaian di belakang pelayan proksi, gunakan pilihan -x
(atau --proxy
) untuk tentukan alamat proksi.
bash
curl -x http://proxy.servbay.demo:8080 https://api.servbay.demo/data
1
Mengehadkan Jalur Lebar Pemindahan
Pilihan --limit-rate
digunakan untuk mengehadkan kelajuan pemindahan (dalam bait sesaat, boleh gunakan akhiran k, m, g), sesuai untuk simulasi kelajuan rangkaian rendah atau mengelak penggunaan lebar jalur berlebihan.
bash
curl --limit-rate 100K https://servbay.demo/largefile.zip -O
1
Sambung Muat Turun ("Resume")
Bagi muat turun fail besar, cURL menyokong sambung semula muat turun menggunakan pilihan -C -
. cURL akan menyemak bahagian fail yang telah dimuat turun dan menyambung dari titik terputus.
bash
curl -C - -O https://servbay.demo/largefile.zip
1
Mengendalikan Pengesahan Sijil SSL
Secara lalai, cURL akan mengesahkan sijil SSL untuk sambungan HTTPS. Jika anda mahu menentukan fail sijil CA tertentu untuk pengesahan ini, gunakan --cacert
.
bash
curl --cacert /path/to/custom_ca.crt https://secure.servbay.demo
1
Jika anda telah menyediakan laman HTTPS dalam ServBay dan menggunakan sijil yang ditandatangani CA (CA User ServBay atau CA Public ServBay), anda boleh gunakan pakej sijil CA ServBay untuk mengesahkan sijil SSL tapak anda. Sila rujuk dokumentasi SSL/HTTPS ServBay untuk mengetahui laluan tepat fail CA, biasanya terdapat dalam direktori etc/ssl
di folder pemasangan ServBay.
Amaran: Dalam sesetengah scenario ujian, anda mungkin akan menggunakan pilihan --insecure
(atau -k
) untuk mengabaikan ralat pengesahan sijil SSL. Sangat tidak digalakkan menggunakan pilihan ini dalam persekitaran produksi atau untuk data sensitif kerana ia mematikan pemeriksaan keselamatan penting.
bash
curl --insecure https://secure.servbay.demo
1
Soalan Lazim (FAQ)
1. Arahan curl
tidak ditemui dalam terminal ServBay
- Punca: Ini biasanya bermakna persekitaran terminal anda tidak mengandungi laluan boleh-execute ServBay yang betul.
- Penyelesaian: Pastikan pembolehubah persekitaran ServBay telah dikonfigurasi dengan betul. Jika masalah masih berlaku, cuba buka “Tetapan” dalam ServBay → “Alat Baris Perintah”, lalu buat persediaan untuk
zsh
danbash
, kemudian buka semula terminal.
2. Muncul ralat sambungan atau tamat masa apabila membuat permintaan
- Punca: Berkemungkinan pelayan sasaran tidak dapat dicapai, masalah rangkaian, firewall menghalang, atau URL tidak tepat.
- Penyelesaian:
- Semak sama ada URL yang dimasukkan adalah betul.
- Pastikan sambungan internet anda tiada masalah.
- Untuk akses tapak ServBay tempatan (cth.
servbay.demo
), pastikan ServBay sedang berjalan, dan pelayan web (seperti Caddy/Nginx) telah dihidupkan. - Semak jika firewall atau perisian keselamatan menyekat sambungan keluar cURL.
- Untuk HTTPS, pastikan sijil SSL adalah sah (rujuk bahagian pengesahan SSL di atas).
3. Gagal muat turun atau muat naik fail
- Punca: Laluan fail salah, isu keizinan fail, pelayan tidak menyokong operasi atau ralat pelayan.
- Penyelesaian:
- Pastikan laluan fail dalam arahan anda betul dan wujud.
- Pastikan pengguna ServBay atau pengguna terminal kini mempunyai akses baca/tulis ke fail.
- Jika memuat naik ke laman tempatan ServBay, pastikan pelayan membenarkan muat naik dan direktori sasaran boleh ditulis.
- Semak mesej ralat output cURL untuk sebab-sebab kegagalan yang lebih spesifik.
4. Kegagalan pengesahan sijil SSL
- Punca: Sijil SSL tidak sah, tamat tempoh, domain tidak sepadan, rantaian tidak lengkap, atau cURL tidak dapat mencari/percayakan CA.
- Penyelesaian:
- Pastikan sijil tapak sasaran adalah sah.
- Jika melawat tapak ServBay tempatan dengan sijil dari CA ServBay, ikut arahan di dokumen ini atau dokumentasi SSL ServBay untuk nyatakan laluan pakej sijil CA dengan pilihan
--cacert
. - Untuk ujian tanpa data sensitif, anda boleh gunakan pilihan
--insecure
buat sementara (tidak disyorkan untuk produksi).
Rumusan
cURL ialah satu alat baris perintah yang sangat berkuasa dan fleksibel, dan penting untuk pembangunan web. Dengan cURL terbina dari ServBay, anda boleh menguji pelbagai interaksi rangkaian dan pemindahan data dalam persekitaran pembangunan tempatan anda—sama ada permintaan HTTP ringkas mahupun operasi API dan fail yang rumit. Menguasai penggunaan cURL asas dan lanjutan akan sangat meningkatkan kecekapan anda serta keupayaan untuk menyelesaikan masalah semasa membangunkan aplikasi web.