kıvrılmak

Dosyadan cURL Gönderi Verileri Nasıl Kullanılır

Dosyadan cURL Gönderi Verileri Nasıl Kullanılır

cURL, minimum kullanıcı etkileşimi ile uzak bir ana bilgisayara veya uzak bir ana bilgisayardan veri aktarmak için kullanılan ücretsiz ve açık kaynaklı bir komut satırı yardımcı programıdır. cURL, HTTP, FTP, SCP ve SFTP gibi birincil protokollerle çalışır.

Kullanıcıların tek komutları veya bash komut dosyalarını kullanarak verileri yüklemesine ve indirmesine olanak tanır. Ayrıca kullanıcı doğrulama, proxy tünelleme, indirme özgeçmişi, form tabanlı yüklemeler, SSL sertifikaları ve çok daha fazlası gibi özellikler sağlar. cURL'nin bir HTTP istemcisinden daha fazlası olduğunu söylemek güvenlidir.

Bu öğretici, kullanıcıların dosya verilerini kullanarak HTTP gönderi istekleri gerçekleştirmesine olanak tanıyan bir cURL işlevinde size yol gösterecektir.

Başlamadan önce, bunun cURL'ye yeni başlayanlar için bir rehber olmadığını belirteyim; bir dereceye kadar önceden bilgi birikimine, özellikle ağ protokolleri, HTTP istekleri ve daha fazlası hakkında bilgiye ihtiyacınız var.

POST isteklerini gerçekleştirmek için cURL'yi kullanmaya başlamadan önce, önce kurulumu yapalım.

cURL Nasıl Kurulur

Çoğu durumda, varsayılan olarak büyük Linux dağıtımlarında kurulu cURL'yi bulacaksınız. cURL'ye sahip olduğunuzu doğrulamak için şu komutu kullanın:

kıvrılma -- yardım

Bir hata alırsanız:

-bash: curl: komut bulunamadı

Devam etmeden önce yüklemeniz gerekecek.

Kurulumu aşağıdaki komutlarda gösterildiği gibi tamamlamak için varsayılan paket yöneticisini kullanın:

sudo apt-get güncellemesi
sudo apt-get install curl -y

cURL ile bir dosyadan verinin nasıl POST edileceğini tartışmadan önce, kısaca POST isteğinden bahsetmeme izin verin. Her zamanki gibi, buna zaten aşina iseniz, atlamakta özgürsünüz; aksi takdirde, etrafta dolaş.

cURL POST Talebi

HTTP gönderi isteği, bir kaynak oluşturmak veya güncellemek için uzak bir ana bilgisayara veri göndermek için kullanılan en popüler HTTP/HTTPS istek yöntemlerinden biridir.

şimdi:

Lütfen yöntemi PUT ile karıştırmayın; oldukça benzer olsalar da, farklılıkları var.

Bir POST isteği kullanılarak gönderilen veriler, esas olarak HTTP isteğinin istek gövdesinde depolanır.

Örneğin, kullanıcı adı ve şifrenin yanı sıra değerlerini de gönderen aşağıdaki POST isteğini göz önünde bulundurun.

POST /kısıtlı/giriş.php HTTP/1.1 Ana Bilgisayar: linuxhint.com İçerik Türü: application/x-www-form-urlencoded kullanıcı adı=linuxhint&password=parola

Yukarıdaki POST isteğini cURL kullanarak göndermek için komutları şu şekilde belirtebiliriz:

curl -x POST -d “kullanıcı adı=linuxhint&parola=parola” https://linuxhint.com/kısıtlı/giriş.php

Yukarıdaki komutta, cURL'ye Content-Type: application/x-www-form-urlencoded olan varsayılan başlıkları dahil etmesini söylemek için -d seçeneğini kullandık

-X seçeneği, bu durumda HTTP POST isteği için kullanılacak HTTP istek yöntemini belirtir.

cURL İçerik Türü Belirtin

Bazı durumlarda, isteği gönderirken İçerik Türünü [açıkça] belirtmek isteyebiliriz. Başlıktaki İçerik Türü varlığı, gönderdiğimiz kaynağın medya türünü belirtir. Ortam türü aynı zamanda yaygın olarak MIME Türü olarak da bilinir.

MIME Türleri hakkında bilgi edinmek istiyorsanız, aşağıda verilen kaynağı göz önünde bulundurun:

https://linkfy.to/IANA-MIME-Türleri

Bir cURL isteğinde İçerik Türünü belirtmek için -H bayrağını kullanabiliriz. Örneğin, MIME Type application/JSON gönderelim.

curl -X POST -d "kullanıcı adı": "linuxhint", "şifre": "şifre" -H "İçerik Türü: uygulama/json" https://linuxhint.com/kısıtlı/giriş.php

Yukarıdakiler, sağlanan URL'ye bir JSON nesnesi göndermek istediğimizi belirtir. Bunu bir JSON dosyasındaki değerleri okumak veya ham olarak göndermek için kullanabilirsiniz.

Dosyadan Veri Nasıl Okunur

cURL kullanarak komut satırında istek yapmak istediğinizi, ancak gönderilecek verilerin bir dosyada saklandığını varsayalım. Medya türünü belirtmek için İçerik Türünü kullanabilir ve ardından verileri içeren dosya yolunu iletebilirsiniz. Bu örnek için bir JSON nesnesi kullanmayı göstereceğim.

JSON dosyası (veri.json) aşağıdaki değerleri içerir:


"kullanıcı adı": "linuxhint",
"şifre": "şifre"

Bu verileri bir JSON dosyasından göndermek için -d'yi kullanabilir ve ardından aşağıdaki komutta gösterildiği gibi dosya adını iletebiliriz:

curl -X POST -H “Content-Type: application/json” -d “@data.json” https://linuxhint.com/kısıtlı/giriş.php

-data-binary seçeneğini de kullanabilirsiniz.

curl -X POST -H “Content-Type: application/json” --data-binary “@/home/user/data.json” https://linuxhint.com/kısıtlı/giriş.php

Verileri göndermek için bir metin dosyası da kullanabilirsiniz; belirtmeniz gereken tek şey metin/düz olarak İçerik Türüdür.

Örneğin, bir metin dosyası (veri.txt) aşağıdaki değerleri içeren

kullanıcı adı=linuxhint&parola=parola

cURL komutunu kullanarak isteği şu şekilde göndermeniz yeterlidir:

curl -X POST -H “İçerik Türü: metin/düz” -d “veri.txt” https://linuxhint.com/kısıtlı/giriş.php

XML, HTML ve çok daha fazlası gibi kullanabileceğiniz diğer dosya türlerini kullanabilirsiniz.

Sonuç

Bu eğitimde, POST isteklerinin nasıl yapılacağını ve çeşitli formatlarda veri iletileceğini tartıştık. cURL'nin çok güçlü olmasının yanı sıra çok esnek olduğunu akılda tutmakta fayda var. Güçlü istekler oluşturmak için bir seçenekler koleksiyonunu tek bir komutta birleştirebilir. Daha fazla bilgi için, iyi yazılmış olduğu için cURL belgelerini tavsiye ederim.

https://kıvırmak.se/belgeler/

Okuduğunuz için teşekkürler ve cURL ile iyi eğlenceler.

How to Show FPS Counter in Linux Games
Linux gaming got a major push when Valve announced Linux support for Steam client and their games in 2012. Since then, many AAA and indie games have m...
How to download and Play Sid Meier's Civilization VI on Linux
Introduction to the game Civilization 6 is a modern take on the classic concept introduced in the series of the Age of Empires games. The idea was fai...
How to Install and Play Doom on Linux
Introduction to Doom The Doom Series originated in the 90s after the release of the original Doom. It was an instant hit and from that time onwards th...