# How to Send HTTP Headers With cURL: A Comprehensive Guide with Examples

Maîtrisez l'envoi et la réception d'en-têtes HTTP en utilisant cURL avec ce guide complet. Explorez des exemples, des en-têtes personnalisés et des conseils de dépannage.

- Auteur: [Brandon Perry](https://fineproxy.org/fr/brandon-perry/)
- Publié: 2023-09-21T04:37:23.000Z
- Mis à jour: 2025-05-28T07:10:00.000Z
- URL canonique: https://fineproxy.org/fr/how-to-send-http-headers-with-curl-a-comprehensive-guide-with-examples/

Envoyer des en-têtes HTTP avec cURL est une compétence fondamentale pour quiconque travaille avec des API ou des services web. Les en-têtes HTTP communiquent des informations essentielles sur votre requête, telles que le type de contenu, l'autorisation, et bien d'autres. cURL, un outil en ligne de commande puissant pour effectuer des requêtes HTTP, vous permet de personnaliser et d'envoyer ces en-têtes sans effort. Dans ce guide, nous vous guiderons à travers le processus d'envoi d'en-têtes HTTP avec cURL, complété par une variété d'exemples pratiques.

![Comment envoyer des en-têtes HTTP avec cURL : un guide complet avec des exemples](/wp-content/uploads/2023/09/Depositphotos_4352211_XL-2048x1448.jpg)

## Prérequis

Avant de nous plonger dans les exemples, assurez-vous que cURL est installé sur votre système. Vous pouvez vérifier s'il est installé en exécutant :

```
curl --version
```

S'il n'est pas installé, vous pouvez le télécharger à partir du site officiel de cURL.

## Syntaxe de base de cURL

La syntaxe de base pour envoyer une requête HTTP avec cURL est :

```
curl [options] [URL]
```

Pour inclure des en-têtes HTTP dans votre requête, vous pouvez utiliser l'option -H ou –header suivie des informations d'en-tête.

### Exemple 1 : Envoi d'une requête GET avec en-têtes personnalisés

Commençons par une simple requête GET vers une API hypothétique, en incluant un en-tête personnalisé. Supposons que vous souhaitiez inclure un en-tête « Authorization » avec votre clé API.

```
curl -H "Authorization: Bearer YOUR_API_KEY" https://api.example.com/resource
```

Remplacez YOUR\_API\_KEY par votre clé API réelle.

### Exemple 2 : Envoi d'une requête POST avec données JSON

Dans cet exemple, nous enverrons une requête POST avec une charge utile JSON et un en-tête de type de contenu personnalisé.

```
curl -X POST -H "Content-Type: application/json" -d '{"name": "John", "email": "[email protected]"}' https://api.example.com/users
```

Cette commande spécifie la méthode de requête comme POST (-X POST), définit le type de contenu sur JSON (-H « Content-Type: application/json »), et inclut les données JSON avec -d.

### Exemple 3 : Définition de plusieurs en-têtes

Vous pouvez inclure plusieurs en-têtes dans une seule requête cURL. Ici, nous envoyons une requête avec les en-têtes « Authorization » et « User-Agent ».

```
curl -H "Authorization: Bearer YOUR_API_KEY" -H "User-Agent: MyClient/1.0" https://api.example.com/resource
```

### Exemple 4 : Envoi de cookies

Pour envoyer des cookies avec votre requête, utilisez l'option -b ou –cookie suivie des données de cookie.

```
curl -b "session=12345; preferences=darkmode" https://api.example.com/dashboard
```

Cet exemple envoie deux cookies : « session » et « preferences ».

### Exemple 5 : Suivre les redirections

Par défaut, cURL ne suit pas les redirections HTTP. Pour activer le suivi des redirections, utilisez l'option -L ou –location.

```
curl -L https://example.com
```

Cette commande suivra les redirections et affichera le contenu de la page finale.

### Exemple 6 : Envoyer un User-Agent personnalisé

Vous pouvez définir un en-tête User-Agent personnalisé pour identifier votre requête.

```
curl -H "User-Agent: MyCustomApp/1.0" https://api.example.com/resource
```

Les en-têtes User-Agent personnalisés sont utiles lors de l'interaction avec des API qui nécessitent des agents utilisateurs spécifiques.

### Exemple 7 : Envoyer des en-têtes de requête sans données

Si vous devez envoyer un en-tête sans corps de requête, vous pouvez utiliser l'option -I ou –head.

```
curl -I https://api.example.com/resource
```

Cette commande envoie une requête HEAD, qui récupère uniquement les en-têtes et non le contenu réel.

### Exemple 8 : Envoyer une authentification basique

Pour envoyer les identifiants d'authentification HTTP Basic, vous pouvez inclure un en-tête « Authorization » avec votre nom d»utilisateur et votre mot de passe codés en Base64.

```
curl -H "Authorization: Basic BASE64_ENCODED_CREDENTIALS" https://api.example.com/resource
```

Remplacez BASE64\_ENCODED\_CREDENTIALS par votre nom d'utilisateur et votre mot de passe codés en Base64 (par exemple, username:password).

### Exemple 9 : Débogage et mode détaillé

Lors du dépannage de problèmes ou de l'inspection de la requête et de la réponse HTTP, vous pouvez utiliser le mode détaillé de cURL avec l'option -v ou –verbose.

```
curl -v https://api.example.com/resource
```

Cela affichera des informations détaillées sur la requête et la réponse, y compris les en-têtes.

L'envoi d'en-têtes HTTP avec cURL est une compétence cruciale pour travailler avec des services web et des API. Avec les exemples fournis dans ce guide, vous pouvez personnaliser vos demandes, gérer l'authentification, envoyer des cookies, et bien plus. À mesure que vous familiariserez avec les capacités de cURL, vous serez bien équipé pour interagir efficacement avec diverses services web.

![Comment envoyer des en-têtes HTTP avec cURL : un guide complet avec des exemples](/wp-content/uploads/2023/09/Depositphotos_119316288_XL-2048x1239.jpg)
