Konuya yabancı olanlar için curl http requestler gönderebildiğimiz bir komut satırı programı. libCurl ise curl un platformdan bağımsız kütüphanesi. Çok daha güzel anlatımı ise şöyle :)
libcurl is a free and easy-to-use client-side URL transfer library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS and FILE. libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, Kerberos4), file transfer resume, http proxy tunneling and more!
Aklıma gelen bazı uygulama alanları..
Console uygulamamızdan bir sayfadan veri çekebiliriz, kendi rss reader ımızı yazabiliriz. Mailimize login olup yeni ileti var mı kontrol edebiliriz.Programımızı weble ilişkilendirebiliz. Yazılım güvenliği konusunda kullanılabilir. Tabi yaramaz işlerde kullanmaya da oldukça uygun...
Burada anlatıldığına göre MIT/X türevi bir lisansa sahip. açık kaynak kodlu bir proje ticari uygulamalarda da gayet güzel kullanılabiliyor.
Yukarıda saydığım uygulamalar belki .net veya başka RAD(delphi, cbuilder, vb) ürünlerini kullanarak çok daha kolay şekilde gerçekleştirilebilir ama bildiğim kadarıyla kütüphane c/c++ ve php dünyasında pek yaygın.
- UYGULAMA
Sizde aynı durumdaysanız libcurl-7.15.1-msvc-win32-ssl-0.9.8a-zlib-1.2.3.zip
paketini önerebilirim. Paket içerisinde 32 bit win sistemler için derlenmiş ssl desteği sağlayan lib ve dll ler var.
Bunu uygun yere(benim sistemimde c:\curl) kaydettikten sonra derleyicimizde gerekli linker ve header directory ayarlarını yapmamız gerekiyor.
Bunlar Ms VC++ 6 için şöyle:
- -Project>Settings>Link>Object/Library Modules e "libcurl.lib" ifadesini ekleyin.
- -Tools>Options>Directories>Show Directory for Include Files seçili iken C:\curl\include satırını ekleyin.
- -Tools>Options>Directories>Show Directory for Library Files seçili iken C:\curl\ satırını ekleyin.
Diğer derleyicilerde de menüler benzer şekilde olacaktır.
Ayrıca c:/curl de libcurl_imp.lib dosyasını libcurl.lib yapıp curl klasorunde lib içine kaydetmeyi unutmayın.
Dll ler ise libcurl.dll ssleay32.dll zlib1.dll libeay32.dll bunlarıda uygulamamızın exesinin bulunduğu klasore kopyalayın.
simple.c Burada örnek bir uygulama var. İlk önce bu kodu denemenizi tavsiye ederim. Yaptığınız ayarlarla bu programı derlediğinizde haxx.se adresini bir http request gönderilecek ve gelen yanıt console ekranınıza yansıyacaktır.
http://curl.haxx.se/lxr/source/docs/examples/
Adresinde daha gelişmiş uygulamalar bulunmakta.
Kütüphane oldukça kullanışlı ve kolay. Hiç deneyimim olmamasına rağmen bir saat kadar bir süre içinde okulumuz öğrenci sistemine programla login olabildim. Belki bir sonraki yazıya konu olabilir. :)
6 yorum - yorum yaz:
yazınız çok güzel olmuş bide sizin bana verdiğiniz program kitabını çok sevdim hergün okuyorum
Gayet öğretici bir anlatım olmuş. Emeğinize sağlık.
@Esat ARSLAN: Faydalı olabildiysek ne mutlu bize. Bu vesile ile blogunuzuda öğrenmiş oldum.
çok teşekkür ederim. ellerinize sağlık .yazınız çok yardımcı oldu .
Sinan
Size hiç bi rşekilde ulaşamıyorum. Mail yada telefon vb. bir araç yok. Nasıl ulaşabiliriz ticari bir proje için.
Sitenin hakkımda bölümünde mail adresim var. Oradan ulaşabilirsiniz.
Yorum Gönder