# cHttp

HTTPリソースを消費および生成するためのHTTPベースのエンドポイントを提供します。

詳細は、Apache Camelのドキュメンテーションhttps://camel.apache.org/components/latest/を参照してください。

## cHttpの標準プロパティ

これらのプロパティは、標準ジョブのフレームワークで実行されているcHttpを設定するために使われます。

標準のcHttpコンポーネントは、Connectivityファミリーに属しています。

## 基本設定

| プロパティ | 説明 |
| --- | --- |
| Uri | 呼び出すHttpリソースのURI。 |
| [Client] (クライアント) | cHttpをクライアントとして使って外部サーバーを呼び出すには、このオプションを選択します。 |
| [Server] (サーバー) | Webサービスを生成するサーバーとしてcHttpを使うには、このオプションを選択します。 |
| [Client Configuration / Method] (クライアント設定/メソッド) | <ul> <li> <p>HTTPリクエストメソッドをリスト内の<span>GET</span>、<span>POST</span>、<span>PUT</span>、<span>DELETE</span>、<span>HEAD</span>、<span>OPTIONS</span>、<span>TRACE</span>、<span>PATCH</span>から選択します。</p> </li> <li> <p> <span>GET</span>: リクエストURIで識別される情報を取得します。</p> <p> <span>[Parameters] (パラメーター)</span>: <span>[+]</span>ボタンをクリックして必要な数の行を追加し、テーブルにキーと値を定義します。</p> <p> <span>[Encoder Charset] (エンコーダー文字セット)</span>: フィールドにエンコーダーの文字セットを入力します。</p> </li> <li> <p> <span>POST</span>: オリジンサーバーがリクエストに含まれるエンティティを、リクエストURIで識別されるリソースの新しい下位として受け入れることをリクエストします。</p> <p> <span>[Plain Text] (プレーンテキスト)</span>: <span>[Content-Type] (コンテンツタイプ)</span>を<em>text/plain</em>、<em>text/html</em>、<em>text/xml</em>、<em>application/x-www-form-urlencoded</em>、<em>application/xml</em>、<em>application/JSON</em>、または<em>other...</em>から選択し(<em>other...</em>を選択した場合は、表示される次のフィールドに[Content-Type] (コンテンツタイプ)を指定します)、<span>[Content] (コンテンツ)</span>ボックスにリクエストメッセージとしてテキストを入力します。</p> <p> <span>[Form Style] (フォームスタイル)</span>: <span>[+]</span>ボタンをクリックして必要な数の行を追加し、<span>[Parameters] (パラメーター)</span>テーブルにキーと値を定義します。また、<span>[Encoder Charset] (エンコーダー文字セット)</span>フィールドにエンコーダー文字セットを入力します。</p> <p> <span>[Use Message Body] (メッセージボディを使用)</span>: 受信メッセージボディをHttpリクエストとして使います。<span>[Content-Type] (コンテンツタイプ)</span>を<em>text/plain</em>、<em>text/html</em>、<em>text/xml</em>、<em>application/x-www-form-urlencoded</em>、<em>application/xml</em>、<em>application/JSON</em>、または<em>other...</em>から選択します(<em>other...</em>を選択した場合は、表示される次のフィールドに[Content-Type] (コンテンツタイプ)を指定します)。</p> </li> <li> <p> <span>PUT</span>: 囲まれたエンティティが指定されたリクエストURIの下に保管されるようにリクエストします。</p> <p> <span>[Plain Text] (プレーンテキスト)</span>: <span>[Content-Type] (コンテンツタイプ)</span>を<em>text/plain</em>、<em>text/html</em>、<em>text/xml</em>、<em>application/x-www-form-urlencoded</em>、<em>application/xml</em>、<em>application/JSON</em>、または<em>other...</em>から選択し(<em>other...</em>を選択した場合は、表示される次のフィールドに[Content-Type] (コンテンツタイプ)を指定します)、<span>[Content] (コンテンツ)</span>ボックスにリクエストメッセージとしてテキストを入力します。</p> <p> <span>[Form Style] (フォームスタイル)</span>: <span>[+]</span>ボタンをクリックして必要な数の行を追加し、<span>[Parameters] (パラメーター)</span>テーブルにキーと値を定義します。また、<span>[Encoder Charset] (エンコーダー文字セット)</span>フィールドにエンコーダー文字セットを入力します。</p> <p> <span>[Use Message Body] (メッセージボディを使用)</span>: 受信メッセージボディをHttpリクエストとして使います。<span>[Content-Type] (コンテンツタイプ)</span>を<em>text/plain</em>、<em>text/html</em>、<em>text/xml</em>、<em>application/x-www-form-urlencoded</em>、<em>application/xml</em>、<em>application/JSON</em>、または<em>other...</em>から選択します(<em>other...</em>を選択した場合は、表示される次のフィールドに[Content-Type] (コンテンツタイプ)を指定します)。</p> </li> <li> <p> <span>[DELETE] (削除)</span>: オリジンサーバーがリクエストURIで識別されるリソースを削除するようにリクエストします。</p> <p> <span>[Parameters] (パラメーター)</span>: <span>[+]</span>ボタンをクリックして必要な数の行を追加し、テーブルにキーと値を定義します。</p> <p> <span>[Encoder Charset] (エンコーダー文字セット)</span>: フィールドにエンコーダーの文字セットを入力します。</p> </li> <li> <p> <span>[HEAD] (ヘッド)</span>: サーバーが応答でメッセージボディを返してはならないことを除き、GETと同じです。</p> <p> <span>[Parameters] (パラメーター)</span>: <span>[+]</span>ボタンをクリックして必要な数の行を追加し、テーブルにキーと値を定義します。</p> <p> <span>[Encoder Charset] (エンコーダー文字セット)</span>: フィールドにエンコーダーの文字セットを入力します。</p> </li> <li> <p> <span>[OPTIONS] (オプション)</span>: リクエストURIで識別されるリクエスト/応答チェーンで利用可能な通信オプションに関する情報のリクエストを表します。</p> </li> <li> <p> <span>[TRACE] (トレース)</span>: リクエストメッセージのリモートのアプリケーション層ループバックを呼び出します。</p> </li> <li> <p> <span>PATCH</span>: 特定のパラメーターをベースにデータを部分的に変更します。</p> <p> <span>[Plain Text] (プレーンテキスト)</span>: <em>text/plain</em>、<em>text/html</em>、<em>text/xml</em>、<em>application/x-www-form-urlencoded</em>、<em>application/xml</em>、<em>application/JSON</em>、<em>other...</em>のいずれかから<span>コンテンツタイプ</span>を選択します。<em>other...</em>を選択した場合に表示される次のフィールドで、コンテンツタイプを指定します。</p> <p> <span>[Form Style] (フォームスタイル)</span>: <span>[+]</span>ボタンをクリックして必要な数の行を追加し、<span>[Parameters] (パラメーター)</span>テーブルにキーと値を定義します。 </p> <p> <span>[Use Message Body] (メッセージボディを使用)</span>: 受信メッセージボディをHTTPリクエストとして使います。<em>text/plain</em>、<em>text/html</em>、<em>text/xml</em>、<em>application/x-www-form-urlencoded</em>、<em>application/xml</em>、<em>application/JSON</em>、<em>other...</em>のいずれかから<span>コンテンツタイプ</span>を選択します。<em>other...</em>を選択した場合に表示される次のフィールドで、コンテンツタイプを指定します。</p> </li> </ul> |
| [Server Configuration / Disable Stream Cache] (サーバー設定/ストリームキャッシュの無効化) | DefaultHttpBindingは、リクエスト入力ストリームをストリームキャッシュにコピーし、メッセージボディに入れます。このチェックボックスがオンの場合、DefaultHttpBindingはリクエストの入力ストリームをメッセージボディに直接設定します。 |
| [Server Configuration / Session Support] (サーバー設定/セッションサポート) | Jettyのサーバー側でセッションマネージャーを有効にするには、このチェックボックスをオンにします。 |
| [Server Configuration / Use Transfer-Encoding] (サーバー設定/Transfer-Encodingの使用) | このオプションはデフォルトで有効になっています。このチェックボックスがオフの場合、JettyサーブレットによりHTTPストリーミングが無効にされ、応答のcontent-lengthヘッダーが設定されます。 |
| [Server Configuration / Enable JMX] (サーバー設定/JMXの有効化) | このエンドポイントのJetty JMXサポートを有効にするには、このオプションを選択します。このオプションの詳細は、http://camel.apache.org/jetty.html#Jetty-JettyJMXsupportを参照してください。 |
| [Server Configuration / Match on URI Prefix] (サーバー設定/URIプレフィックスのマッチ) | このチェックボックスをオンにすると、CamelServletを使って、完全一致が見つからない場合にURIプレフィックスを照合してターゲットコンシューマーを検索します。このオプションの詳細は、http://camel.apache.org/how-do-i-let-jetty-match-wildcards.htmlを参照してください。 |
| [Server Configuration / Use Jetty Continuation] (サーバー設定/Jetty継続性の使用) | JettyサーバーにJetty継続を使うには、このチェックボックスをオンにします。このオプションの詳細は、http://wiki.eclipse.org/Jetty/Feature/Continuationsを参照してください。 |
| [Server Configuration / Enable HTTP TRACE] (サーバー設定/HTTP TRACEの有効化) | HTTP TRACEメソッドを有効にするには、このオプションを選択します。 |

## 詳細設定

| プロパティ | 説明 |
| --- | --- |
| ヘッダー | [+]ボタンをクリックして必要な数の行を追加し、ヘッダーにキーと値を定義します。利用できるURIオプションについては、https://camel.apache.org/components/latest/http-component.htmlサイトをご覧ください。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | cHttpは、外部Httpリソースを消費するためのHttpベースのエンドポイントを提供します。すなわち、Httpを使って外部サーバーを呼び出すクライアントとしてです。 |
| 制限事項 | ライセンスの互換性の問題のため、このコンポーネントの使用に必要な1つ以上のJARが提供されていません。この特定のコンポーネントに不足しているJARをインストールするには、Component (コンポーネント)タブビューの[Install] (インストール)ボタンをクリックします。Talend StudioのIntegrationパースペクティブにある[Modules] (モジュール)タブでも、不足しているすべてのJARを簡単に見つけて追加できます。詳細は、[外部モジュールをインストール](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/installing-external-modules)をご覧ください。 |

**関連概念**

[リモートファイルのコンテンツを取得する](https://help.qlik.com/talend/ja-JP/mediation-components/8.0/mediation-internet/chttp-csetbody-cprocessor-cmessagingendpoint-retrieving-content-of-remote-file)

[cHttpを使ってWebサービスを作成する](https://help.qlik.com/talend/ja-JP/mediation-components/8.0/mediation-internet/chttp-cprocessor-using-chttp-to-produce-web-service)