cURL

command-line programma en bibliotheek voor overbrengen gegevens met behulp van URL-syntaxis

Het softwareproject cURL (uitgesproken als 'curl'[4]) biedt een bibliotheek en command-linetool voor het downloaden of uploaden van gegevens met verschillende protocollen.

cURL
Logo
voorbeelduitvoer van curl -O
Ontwerper(s) Daniel Stenberg.[1]
Ontwikkelaar(s) Bijdragers aan het cURL-project.
Uitgebracht 1997[2] (26 jaar)
Recentste versie 8.7.1 (27 maart 2024)[3] Bewerken op Wikidata
Status Actief
Besturingssysteem AIX, AmigaOS, BeOS, BeOS, Chrome NaCl, DOS, DragonFly BSD, FreeBSD, GNU-Darwin, HPUX, Haiku, Hurd, IRIX, Linux, macOS, MiNT, Midnight BSD, Minix, NetBSD, NetWare, Nexenta, OS/2, Open Server, OpenBSD, Plan9, QNX, RISC OS, Solaris, Syllable, Tru64 UNIX, UnixWare, VMS, Windows
Geschreven in C.
Categorie FTP-client
HTTP-client
Licentie(s) Vrije Software: https://curl.haxx.se/docs/copyright.html MIT/X afgeleide licentie
Versiebeheer
Website (en) Officiële webpagina
Portaal  Portaalicoon   Informatica
Vrije software

Het cURL-project produceert twee producten: libcurl en cURL. Het werd voor het eerst uitgebracht in 1997. De naam staat voor "Client URL".[5] De oorspronkelijke auteur en lead developer is de Zweedse ontwikkelaar Daniel Stenberg.[1]

libcurl bewerken

Libcurl is een bibliotheek voor clients, bedoeld voor gegevensoverdracht via een URL,[6] ondersteunende cookies, DICT, FTP, FTPS, Gopher, HTTP (met HTTP/2-ondersteuning), proxyservers, HTTPS, IMAP, Kerberos, LDAP, POP3, RTSP, SCP en SMTP. De bibliotheek ondersteunt het URI-bestandsschema, SFTP, Telnet, TFTP, bestandsoverdrachtpauzering en -hervatting (tijdens een download), uploaden met FTP, HTTP-formulier-gebaseerde upload, HTTPS-certificaten, LDAPS, proxy's en gebruiker-plus-wachtwoordverificatie.

De libcurl-bibliotheek is portable; het bouwt en werkt identiek op vele platforms, waaronder AIX, AmigaOS, Android, BeOS, BlackBerry Tablet OS en BlackBerry 10,[7] OpenVMS, Darwin, DOS, FreeBSD, HP-UX, Hurd, iOS, IRIX, Linux, macOS, NetBSD, NetWare, OpenBSD, OS/2, QNX Neutrino, RISC OS, Solaris, Symbian, Tru64, Ultrix, UnixWare en Windows.

De bibliotheek is vrij, thread-safe en IPv6-compatibel. De taalbindings zijn beschikbaar voor meer dan 40 programmeertalen, waaronder C/C++, Java, PHP en Python.

De libcurl-bibliotheek kan axTLS,[8] GnuTLS, mbed TLS, NSS, QSOSSL op IBM i, SChannel op Windows, Secure Transport op macOS en iOS, SSL/TLS via OpenSSL en wolfSSL.

cURL bewerken

CURL is een command-line programma voor het verkrijgen of verzenden van bestanden met behulp van URL-syntaxis.

Aangezien cURL libcurl gebruikt, ondersteunt het een reeks veelgebruikte internetprotocollen, waaronder (momenteel) HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, DAP, DICT, TELNET, FILE, IMAP, POP3, SMTP en RTSP (de laatste vier alleen in versies nieuwer dan 7.20.0 of 9 februari 2010).

CURL ondersteunt HTTPS en voert standaard SSL-certificaatverificatie uit wanneer een veilig protocol zoals HTTPS wordt gespecificeerd. Wanneer cURL verbinding maakt met een externe server via HTTPS, zal het het certificaat van de externe server verkrijgen en vervolgens de geldigheid van de externe server vergelijken met zijn CA-certificaat om er zeker van te zijn dat de externe server de server is die hij beweert te zijn.

Sommige cURL-pakketten zijn gebundeld met een CA-certificaatopslagbestand. Er zijn verschillende opties om een CA-certificaat te specificeren, zoals --cacert en --capath. De optie --cacert kan gebruikt worden om de locatie van het CA-certificaatopslagbestand te specificeren. Op Windows zal cURL, als er geen CA-certificaatbestand is gespecificeerd, zoeken naar een CA-certificaatbestand met de naam "curl-ca-bundle.crt" in de volgende volgorde:

  1. Directory waar het cURL-programma zich bevindt.
  2. Huidige werkmap.
  3. Windows-systeemdirectory.
  4. Windows-directory.
  5. Directory's gespecificeerd in de %PATH%-omgevingsvariabelen.[9]

CURL geeft een foutmelding als de externe server een zelfondertekend certificaat gebruikt of als het certificaat van de externe server niet is ondertekend door een CA die in het CA-certbestand staat vermeld. De optie -k of --insecure kan worden gebruikt om certificaatverificatie over te slaan. Als de externe server wordt vertrouwd, kan het CA-certificaat van de externe server worden toegevoegd aan het CA-certificaatopslagbestand.

Zie ook bewerken

Externe links bewerken