cURL

utilitaire en ligne de commande et bibliothèque pour transférer des données en syntaxe URL

cURL (abréviation de client URL request library : « bibliothèque de requêtes aux URL pour les clients » ou see URL : « voir URL ») est une interface en ligne de commande, destinée à récupérer le contenu d'une ressource accessible par un réseau informatique.

CURL
Description de l'image Curl-logo.svg.
Description de cette image, également commentée ci-après
Commande curl sur une page Wikipédia en HTTP/3.
Informations
Créateur Daniel StenbergVoir et modifier les données sur Wikidata
Première version [1]Voir et modifier les données sur Wikidata
Dernière version 8.11.0 ()[2]Voir et modifier les données sur Wikidata
Dépôt github.com/curl/curlVoir et modifier les données sur Wikidata
Assurance qualité Intégration continueVoir et modifier les données sur Wikidata
État du projet En développement
Écrit en CVoir et modifier les données sur Wikidata
Système d'exploitation Microsoft Windows, GNU/Linux, macOS et BSDVoir et modifier les données sur Wikidata
Langues AnglaisVoir et modifier les données sur Wikidata
Type Utilitaire de ligne de commande (d)
Bibliothèque logicielle
Client HTTPVoir et modifier les données sur Wikidata
Politique de distribution Gratuit
Licence Licence curl (d)Voir et modifier les données sur Wikidata
Documentation curl.se/docsVoir et modifier les données sur Wikidata
Site web curl.seVoir et modifier les données sur Wikidata

La ressource est désignée à l'aide d'une URL et doit être d'un type supporté par le logiciel (voir ci-dessous). Le logiciel permet de créer ou modifier une ressource (contrairement à wget), il peut ainsi être utilisé en tant que client REST.

Le programme cURL implémente l'interface utilisateur et repose sur la bibliothèque logicielle libcurl, développée en langage C. Celle-ci est ainsi accessible aux programmeurs qui veulent disposer des fonctionnalités d'accès au réseau dans leurs programmes. Des interfaces ont été créées dans de nombreux langages (C++, Java, .NET, Perl, PHP, Ruby...).

La bibliothèque supporte notamment les protocoles DICT, file, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, Telnet et TFTP.

Le support d'IPFS est ajouté dans le code le 23 septembre 2023[3].

L'écriture peut se faire en HTTP en utilisant les commandes POST ou PUT.

Exemple

modifier

Pour obtenir l'en-tête HTTP d'une page :

 $ curl -I www.example.org
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: max-age=604800
Content-Type: text/html
Date: Mon, 07 Mar 2016 11:21:41 GMT
Etag: "359670651+gzip"
Expires: Mon, 14 Mar 2016 11:21:41 GMT
Last-Modified: Fri, 09 Aug 2013 23:54:35 GMT
Server: ECS (atl/FC90)
X-Cache: HIT
x-ec-custom-error: 1
Content-Length: 1270

Références

modifier
  1. (en) « How curl Became Like This » (consulté le )
  2. Daniel Stenberg, « Curl: [RELEASE] curl 8.11.0 » (consulté le )
  3. « curl: add support for the IPFS protocols », sur Curl sur Github

Annexes

modifier

Sur les autres projets Wikimedia :

Articles connexes

modifier

Liens externes

modifier