# cURLを使用してHTTPヘッダーを送信する方法：例を交えた完全ガイド

この包括的なガイドで、cURL を使った HTTP ヘッダーの送受信をマスターしましょう。例、カスタムヘッダー、トラブルシューティングのヒントなどを紹介します。

- 著者: [Brandon Perry](https://fineproxy.org/ja/brandon-perry/)
- 公開日: 2023-09-21T04:37:23.000Z
- 更新日: 2025-05-28T07:10:00.000Z
- 正規URL: https://fineproxy.org/ja/how-to-send-http-headers-with-curl-a-comprehensive-guide-with-examples/

cURLでHTTPヘッダーを送信することは、APIやウェブサービスを扱う誰もが身につけるべき基本的なスキルです。HTTPヘッダーはコンテンツタイプ、認可情報など、リクエストに関する重要な情報を伝えます。HTTPリクエストを作成するための強力なコマンドラインツールであるcURLは、これらのヘッダーをカスタマイズして簡単に送信できます。本ガイドでは、cURLを使用したHTTPヘッダー送信プロセスについて、実践的な例を含めて説明します。

![cURLを使用してHTTPヘッダーを送信する方法：例を交えた完全ガイド](/wp-content/uploads/2023/09/Depositphotos_4352211_XL-2048x1448.jpg)

## 前提条件

例を見る前に、システムにcURLがインストールされていることを確認してください。以下のコマンドを実行することでインストール状況を確認できます：

```
curl --version
```

インストールされていない場合は、公式cURLウェブサイトからダウンロードできます。

## 基本的なcURL構文

HTTPリクエストをcURLで送信する基本的な構文は次のとおりです：

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

HTTPヘッダーをリクエストに含めるには、-Hまたは--headerオプションに続いてヘッダー情報を指定して使用できます。

### 例1：カスタムヘッダー付きGETリクエストを送信する

カスタム ヘッダーを含む、仮説的な API への単純な GET リクエストから始めましょう。 API キーに「Authorization」ヘッダーを含めたいとします。

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

YOUR\_API\_KEYを実際のAPIキーに置き換えてください。

### 例2：JSONデータを含むPOSTリクエストの送信

この例では、JSONペイロードとカスタムコンテンツタイプヘッダーを含むPOSTリクエストを送信します。

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

このコマンドはリクエストメソッドをPOST（-X POST）として指定し、コンテンツタイプをJSON（-H "Content-Type: application/json"）に設定し、-dでJSONデータを含めます。

### 例 3: 複数のヘッダーの設定

単一のcURLリクエストに複数のヘッダーを含めることができます。ここでは「Authorization」と「User-Agent」の両方のヘッダーを含むリクエストを送信しています。

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

### 例4：クッキーの送信

リクエストでクッキーを送信するには、-bまたは--cookieオプションに続いてクッキーデータを指定して使用します。

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

この例では、「セッション」と「設定」という 2 つの Cookie を送信します。

### 例5：リダイレクトに従う

デフォルトではcURLはHTTPリダイレクトに従いません。リダイレクト追従を有効にするには、-Lまたは--locationオプションを使用してください。

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

このコマンドはリダイレクトに従い、最終的なページコンテンツを表示します。

### 例6：カスタムUser-Agentの送信

カスタムUser-Agentヘッダーを設定して、リクエストを識別できます。

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

カスタムUser-Agentヘッダーは、特定のユーザーエージェントが必要なAPIと相互作用する場合に便利です。

### 例 7: データなしのリクエスト ヘッダーの送信

リクエストボディなしでヘッダーを送信する必要がある場合は、-Iまたは--headオプションを使用できます。

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

このコマンドはHEADリクエストを送信し、ヘッダーのみを取得して実際のコンテンツは取得しません。

### 例8：基本認証の送信

HTTP基本認証の認証情報を送信するには、ユーザー名とパスワードをBase64でエンコードした「Authorization」ヘッダーを含めることができます。

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

BASE64\_ENCODED\_CREDENTIALS を Base64 でエンコードされたユーザー名とパスワード (例: ユーザー名:パスワード) に置き換えます。

### 例9：デバッグと詳細モード

問題のトラブルシューティングを行ったり、HTTP 要求と応答を検査したりする場合は、-v または –verbose オプションを使用して cURL の冗長モードを使用できます。

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

これはヘッダーを含む、リクエストとレスポンスの詳細情報を表示します。

cURL を使用して HTTP ヘッダーを送信することは、Web サービスや API を操作するための重要なスキルです。このガイドで提供されている例を使用すると、リクエストのカスタマイズ、認証の処理、Cookie の送信などを行うことができます。 cURL の機能に慣れると、さまざまな Web サービスを効果的に操作できるようになります。

![cURLを使用してHTTPヘッダーを送信する方法：例を交えた完全ガイド](/wp-content/uploads/2023/09/Depositphotos_119316288_XL-2048x1239.jpg)
