Cara Menggunakan Data Pos cURL dari Fail

How Use Curl Post Data From File

cURL adalah utiliti baris perintah sumber terbuka dan bebas yang digunakan untuk memindahkan data ke atau dari host jauh dengan interaksi pengguna yang minimum. cURL berfungsi dengan protokol utama seperti HTTP, FTP, SCP, dan SFTP.

Ini memungkinkan pengguna memuat naik dan memuat turun data sama ada menggunakan perintah tunggal atau skrip bash. Ia juga menyediakan ciri seperti pengesahan pengguna, terowong proksi, resume muat turun, muat naik berasaskan borang, sijil SSL, dan banyak lagi. Adalah selamat untuk mengatakan bahawa cURL lebih daripada klien HTTP.



Tutorial ini akan memandu anda melalui satu fungsi cURL yang membolehkan pengguna melakukan permintaan pos HTTP menggunakan data fail.



Sebelum kita memulakan, izinkan saya menyebutkan bahawa ini bukan panduan pemula untuk mengongkong; anda memerlukan tahap pengetahuan terlebih dahulu, terutama pengetahuan mengenai protokol rangkaian, permintaan HTTP, dan banyak lagi.



Sebelum kita dapat menggunakan CURL untuk melaksanakan permintaan POST, mari kita siapkan terlebih dahulu.

Cara Memasang cURL

Dalam kebanyakan kes, anda akan dapati cURL dipasang di sebaran Linux utama secara lalai. Untuk mengesahkan anda mempunyai cURL, gunakan arahan

curl –-help

Sekiranya anda mendapat ralat:



-bash: curl:arahantidak ditemui

Anda perlu memasangnya sebelum meneruskan.

Gunakan pengurus pakej lalai untuk menyelesaikan pemasangan seperti yang ditunjukkan dalam arahan di bawah:

sudo apt-get kemas kini

sudo apt-get pasangkerinting-dan

Sebelum membincangkan cara POST data dari fail dengan cURL, izinkan saya untuk membincangkan permintaan POST secara ringkas. Seperti biasa, jika anda sudah biasa dengan ini, anda boleh melangkau ke hadapan; jika tidak, teruskan.

Permintaan POST CURL

Permintaan pos HTTP adalah salah satu kaedah permintaan HTTP / HTTPS yang paling popular digunakan untuk mengirim data ke host jauh untuk membuat atau mengemas kini sumber.

Sekarang :

Jangan mengelirukan kaedah dengan PUT; walaupun mereka serupa, mereka mempunyai perbezaan.

Data yang dikirim menggunakan permintaan POST terutama disimpan di badan permintaan permintaan HTTP.

Sebagai contoh, pertimbangkan permintaan POST di bawah yang menghantar nama pengguna dan kata laluan serta nilainya.

POS/terhad/login.php HTTP/1.1Hos: linuxhint.com Jenis Kandungan: aplikasi/x-www-bentuk-urlencodednama pengguna= linuxhint&kata laluan= kata laluan

Untuk mengirim permintaan POST di atas menggunakan cURL, kami dapat menentukan perintah sebagai:

kerinting-xPOS-d nama pengguna= linuxhint&kata laluan= kata laluan https://linuxhint.com/terhad/log masuk.php

Dalam perintah di atas, kami menggunakan pilihan -d untuk memberitahu cURL untuk memasukkan header lalai, iaitu Content-Type: application / x-www-form-urlencoded

Pilihan -X menentukan kaedah permintaan HTTP untuk digunakan, dalam hal ini, permintaan HTTP POST.

cURL Nyatakan Jenis Kandungan

Dalam beberapa kes, kami mungkin ingin menentukan [secara eksplisit] Jenis Konten ketika mengirim permintaan. Entiti Jenis Kandungan dalam tajuk menentukan jenis media sumber yang kami hantar. Jenis media juga dikenali sebagai Jenis MIME.

Sekiranya anda ingin mengetahui tentang Jenis MIME, pertimbangkan sumber yang disediakan di bawah:

https://linkfy.to/IANA-MIME-Jenis

Untuk menentukan Jenis Kandungan dalam permintaan cURL, kita dapat menggunakan bendera -H. Sebagai contoh, mari kita hantar aplikasi MIME Jenis / JSON.

kerinting-XPOS-d {nama pengguna: linuxhint, kata laluan: kata laluan} -HJenis Kandungan: aplikasi/json https://linuxhint.com/terhad/log masuk.php

Perkara di atas menunjukkan bahawa kami ingin menghantar objek JSON ke URL yang disediakan. Anda boleh menggunakannya untuk membaca nilai dari fail JSON atau menghantarnya sebagai mentah.

Cara Membaca Data dari Fail

Katakan anda ingin membuat permintaan dalam baris perintah menggunakan cURL, tetapi anda mempunyai data untuk dihantar disimpan dalam fail. Anda boleh menggunakan Content-Type untuk menentukan jenis media dan kemudian lulus jalur fail yang mengandungi data. Untuk contoh ini, saya akan menggambarkan menggunakan objek JSON.

Fail JSON (data.json) mengandungi nilai berikut:

{
'nama pengguna':'linuxhint',
'kata laluan':'kata laluan'
}

Untuk mengirim data ini dari fail JSON, kita dapat menggunakan -d dan kemudian meneruskan nama fail seperti yang ditunjukkan dalam perintah di bawah:

kerinting-XPOS-HJenis Kandungan: aplikasi/json-d @data.json https://linuxhint.com/terhad/log masuk.php

Anda juga boleh menggunakan pilihan –data-binari.

kerinting-XPOS-HJenis Kandungan: aplikasi/json--data-binari @ /kediaman/pengguna/data.json https://linuxhint.com/terhad/log masuk.php

Anda juga boleh menggunakan fail teks untuk menghantar data; semua yang anda perlu tentukan adalah Content-Type sebagai teks / dataran.

Contohnya, fail teks (data.txt) yang mengandungi nilai berikut

nama pengguna= linuxhint&kata laluan= kata laluan

Dengan menggunakan perintah cURL, hantarkan permintaan sebagai:

kerinting-XPOS-HJenis Kandungan: teks/kosong-ddata.txt https://linuxhint.com/terhad/log masuk.php

Anda boleh menggunakan jenis fail lain yang boleh anda gunakan seperti XML, HTML, dan banyak lagi.

Kesimpulannya

Dalam tutorial ini, kami telah membincangkan cara membuat permintaan POST dan menyampaikan data dalam pelbagai format. Adalah baik untuk diingat bahawa selain sangat kuat, cURL juga sangat fleksibel. Ia dapat menggabungkan sekumpulan pilihan dalam satu perintah untuk membuat permintaan yang kuat. Untuk maklumat lebih lanjut, saya mengesyorkan dokumentasi cURL kerana ditulis dengan baik.

https://curl.se/docs/

Terima kasih kerana membaca, dan bergembiralah dengan cURL.