Tag Archives: curl

Utiliser les REST API JSON avec cURL

cURL with REST JSON

De plus en plus de sites vous permettent d’utiliser des API pour mettre à jour des valeurs ou bien pour ajouter de nouvelles fonctionnalités.

L’utilisation de ces API est intéressante car elle permet de développer toutes sortes d’applications (mobile, tablette, desktop) pour interagir avec un site qui ne vous appartient pas et sur lequel vous n’avez pas full Control.

Le protocole le plus fréquemment utilisé est REST, qui est basé sur un échange de données et de requêtage au format JSON.

Le REST est simple à comprendre car il ne dispose que de 4 commandes: GET, POST, PUT et DELETE.

[cURL] 15 commandes pratiques avec cURL

curl

cURL est un outil gratuit en ligne de commande qui permet de télécharger et d’envoyer des données sur divers protocoles: DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet et TFTP.

cURL est léger et disponible sur presque toutes les plateformes: Mac, Windows et Linux.

Il est fréquemment utilisé dans des scripts sous Linux ou pour télécharger du contenu via l’extension cURL de php.

cURL est probablement le logiciel que j’utilise le plus souvent car il me permet de faire du diagnostique, du flooding, du benchmark, de la maintenance, du téléchargement, …

Ainsi lorsque je développe des applications Web, il me permet de vérifier l’efficacité de mon code en envoyant des centaines de requêtes HTTP par secondes, ou bien il me sert d’aspirateur de sites, ou bien encore il me permet de faire des opérations de maintenance comme la sauvegarde de dossiers puis l’envoie sur un FTP de backup.

cURL est vraiment ultra puissant, en plus d’être rapide et performant, il supporte les authentifications sécurisées.

Ce tutoriel pourra vous servir de mémo sur l’utilisation de cURL et il sert de complément à mon premier article sur cURL.

Télécharger des fichiers en utilisant Curl

curl

Curl, tout comme Wget, est un logiciel qui permet de télécharger des fichiers en utilisant les protocoles HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP ou FILE.

Il est disponible sous Linux, Windows et Mac. Cet outil est très complet et simple d'utilisation. Il propose plusieurs fonctionnalités intéressantes:

  • Support des proxy
  • Authentification
  • Upload de fichiers en FTP
  • Connections SSL
  • Support des cookies
  • Reprise de téléchargement et d'upload

Télécharger un fichier HTTP ou FTP avec Curl

Voici les différentes commandes que vous pouvez utiliser pour télécharger un fichier sur un site HTTP, HTTPS ou sur un FTP.

curl -o output.file http://site.com/file1.zip
curl --remote-name http://site.com/file1.zip

Vous pouvez également télécharger une page d'un site internet et la stocker en local sur votre machine:

curl -o page.html http://site.com/page.html

Vous pouvez également télécharger plusieurs fichiers d'un coup:

curl -O http://site.com/file1.zip -O http://site.com/file2.zip

Télécharger un fichier SSH avec Curl

Il est possible de télécharger un fichier sur un serveur SSH en utilisant Curl et SFTP:

curl -u username sftp://server-ssh/file1.zip

Il est également possible de télécharger un fichier sur un serveur SSH en utilisant Curl et SCP avec une clé privée d'authentification:

curl -u username: --key ~/.ssh/id_rsa --pubkey ~/.ssh/id_rsa.pub scp://server-ssh/file1.zip

Ici on a:

  • -u username: pour préciser le login de connection
  • -u username:password: pour préciser le login et le mot de passe de connection
  • –key ~/.ssh/id_rsa: permet de spécifier la clé privée
  • –pubkey ~/.ssh/id_rsa.pub: permet de spécifier la clé publique

Télécharger un fichier sur un FTP sécurisé en utilisant Curl

Il suffit de spécifier un login et un password:

curl ftp://username:password@ftp.monsite.com:21/file.zip
curl -u username:password ftp://ftp.monsite.com:21/file.zip

Pour télécharger un fichier sur un serveur FTP SSL, on utilisera:

curl --ftp-ssl -u username:password ftp://ftp.monsite.com:21/file.zip

Télécharger un fichier sur un site web HTTP sécurisé en utilisant Curl

Pour télécharger un fichier sur un site Web qui requiert une authentification de type HTACCESS, on utilisera:

curl http://username:password@site.com/file.zip
curl -u username:password http://site.com/file.zip