Curl: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Osoom (talk | contribs)
No edit summary
Osoom (talk | contribs)
No edit summary
Line 100: Line 100:
Näide:  
Näide:  
   curl -T koer.php -u nipi:tiri ftp://server.com/kuut/koer.php   
   curl -T koer.php -u nipi:tiri ftp://server.com/kuut/koer.php   
 
===Autor===
===Autor===
Oliver Soom A32
Oliver Soom A32

Revision as of 20:47, 20 December 2011

Olive Soom teeb seda teemat.(POOLELI)

Versioon

1.0

Viimati muudetud

Sissejuhatus

cURL on vaba tarkvara projekt, mille põhieesmärgiks on toota multi-platvormilist tarkvara mis võimaldab andmete ülekannet üle mitmete võrgu protokollide. cURL lasti esmakordselt välja aastal 1997 ning selle alla kuulub library, mille nimeks on libcurl ning käsurea tööriist nimega cURL.

Üldandmed

Nagu ülalpool mainitud, lasti cURL esmakordselt välja aastal 1997. Projekti autoriks oli Daniel Stenberg. Siinkohal oleks tark mainida, et läbi aastate on projekti sisse panustanud suur hulk inimesi. cURL'i programmeerimiskeeleks on C. Viimane, stabiilne, curl versioon, versioon 7.23.1, lasti välja 2011. aasta 17. Novembril.

libcurl

libcurl'i puhul on tegemist vabavaralise kliendi-poolse teegiga, mille eesmärgiks on URL'ide transport, kasutades mitmeid erinevaid võrguprotokolle. libcurli'i toetab neist järgnevaid: FTP, FTPS, Gopher, HTTP, HTTPS, SCP, SFTP, TFTP, Telnet, DICT, LDAP, LDAPS, IMAP, POP3, SMTP, RTSP, ning toetab URI. Samuti toetab antud teek ka HTTPS sertifikaate, HTTP POST'i , HTTP PUT'i, FTP üleslaadmist, Kerberost, HTTP põhinevat üleslaadimist, proxysi'si, "küpsiseid(cookies)", kasutajanimi+salasõna põhilist autenteerimist jpt. libcurl'i teek on suhteliselt üleviidav. See töötab samasuguselt mitmetel platvormidel. Näiteks: Solaris, NetBSD, FreeBSD, OpenBSD, Darwin, HPUX, IRIX, AIX, Tru64, Linux, UnixWare, HURD, Windows, Symbian, Amiga, OS/2, BeOS, Mac OS X, Ultrix, QNX, OpenVMS, RISC OS, Novell NetWare ning DOS. Nagu ülalpool sai mainitud, on libcurl'i nimeline teek tasuta, kindel ohtude suhtes, kokkusobiv IPv6-ga ning suhteliselt kiire. libcurl on kättesaadav enam kui 40 keeles.

cURL

cURL'i puhul on tegemist käsurea tööriistaga, mis võimaldab faile saada ja saata, kasutades URL'i süntaksi. Kuna cURL kasutab libcurl'i , toetab cURL suurel hulgal laialt levinuid Interneti protokolle, sealhulgas HTTP'd, HTTPS'i, FTP'd, FTPS'i, SCP'id, SFTP'd, TFTP'd, LDAP'i, LDAPS'i, DICT'i, TELNET'i, FILE'd, IMAP'i , POP3'e, SMTP'd ning RTSP'd. (Nimetatutest viimast nelja toetab cURL alates versioonist 7.20.0 või kuupäevast 9. veebruar 2010.). cURL'i peamine eesmärk on failide ülekandmine üle eelpool mainitud protokollide, kasutades käsurida. Selle kasulikus seisneb selles, et neid käske saab integreerida nii BASH'i skriptide kui ja Windows batch'i failide sisse, mis omakorda lasevad paljusi URL'iga seotuid tegevusi automatiseerida. Nagu on mainitud, hakkas Daniel Stenberg cURL'i kirjutama aastas 1997, loomaks tööriista failide edastamiseks. Kuna seda jagatakse MIT litsentsi all, on cURL vaba tarkvara.

Paigaldamine

Ubuntu kasutajad, kes kasutavad Ubuntu Desktop'i versiooni saavad selle paigaldada enda arvutile kasutades nii Ubuntu Software Center'it kui ka teha käsurealt. Ubuntu Server op. süsteemi kasutavad isikud saavad seda teha seda käsurealt. Käsureale tuleb sisestada järgnev käsk.

 sudo apt-get install curl

Olles root'i õigustes, tuleb lihtsalt sisestada käsk.

 apt-get install curl

Nagu varem sai mainitud, on cURL mitme-platvormiline, ning cURL'i paigaldamine erinevate platvormide peale käib erinevalt.
Järgneva lingi alt on võimalik leida õpetused erinevate platvormidele paigaldamise kohta: cURL paigaldamine

Kasutamine

cURL'i kasutamiseks tuleb vastav käsk lihtsalt kirjutada käsureale. Kui antud käsk on korrektne, väljastatakse väljundiks antud URL'i source code või process bar. Järgnevalt lisan siia hulga kasulikke käsklusi, mida võib rohkem vaja minna.

Tavalise URL'i lugemine
curl <URL> 

Näide:

curl http://www.google.com

Turvatud URL'i lugemine käib täpselt samamoodi nagu tavalise URL'i lugemine

curl <URL>

Näide: https://www.swedbank.ee

URL'i faili salvestamine

Väljund, milleks on source code, salvestatakse faili.

curl -o <failinimi> <URL>

Näide:

curl -o leht.html http://www.python.org 
Autenteerimist vajava lehe lugemine

Mõnele lehele sissepääsemiseks on vaja teada kasutajanime ja salasõna.

 curl -u <kasutajanimi>:<salasõba> <URL>  

Näide:

 curl -u nipi:tiri http://www.koduleht.ee  
Suunamisega URL

Mõningatel juhtudel, on leheküljed suunatud. Vaikimisi cURL seda ei tuvastada, ning tulemust ei pruugi tulla. Selle vältimiseks tuleks kasutada järgmist käsku:

curl -L <URL> 

Näide:

curl -L http://www.mingilehekülg.ee 
URL päise lugemine

Näitamaks ainult lehe päist. Seda käsku saab kasutada igasuguse URL'i puhul

curl --head <URL>

Näide:

curl --head http://www.google.com

Dokumendi päise laadimine faili

curl --dump-header <fail> <URL>

Näide:

curl --dump-header headers.txt http://www.delfi.ee 
FTP

Selleks, et näha mis asjad leiduvad FTP kaustas. Selleks sisesta käsk:

curl ftp://<kasutajanimi>:<salasõna>@ftp serveri aadress

Näide:

curl ftp://nipi:tiri@server.com 

Näha teatud kausta FTP serveris, sisesta käsk:

curl ftp://<kasutajanimi>:<salasõna>@ftpserveriaadress/vajalik_kaust

Näide:

curl ftp://nipi:tiri@server.com/minu_kaust 

Faili üleslaadimiseks ftp serverisse, tuleb sisestada järgmine:

curl -T <üleslaetava faili nimi> -u <kasutajanimi>:<salasõna> ftp://<server>/<üleslaetava faili uus nimi>

Näide:

curl -T koer.php -u nipi:tiri ftp://minuserver.com/koeruus.php 

Märkuseks: Üleslaetava faili nimi (näite puhul koer.php) laetakse ülesse nimega koeruus.php. Kui destination faili nimi on puudu, kopeeritakse fail serverisse source faili nimega. Vaikimisi kopeeritakse fail juurkausta. (./) Samas on võimalus fail kopeerida sinna kausta, kuhu vaja. Käsk on järgmine:

 curl -T <üleslaetav fail> -u <kasutajanimi>:<salasõna> ftp://<serverinimi>/<vajalik_kaust>/failinimi  

Näide:

 curl -T koer.php -u nipi:tiri ftp://server.com/kuut/koer.php  

Autor

Oliver Soom A32

Kasutatud materjal ning lisalugemist