---
schema_version: "1"
id: a49ee2e3eb6553bf7c17331fdbe7cd54f7789dbfc655257f5d0f6d4e108db9d7
title: HTTP Connector XML リファレンス
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/http-connector/1.5/http-connector-xml-reference.md
canonical_url: https://docs.mulesoft.com/jp/http-connector/1.5/http-connector-xml-reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: bf7f530755de6a6dd60255cef24c117c2f5a9de6935ecbe06ab74ac2b539aaa2
description: MuleSoft Documentation Site
release: "1.5"
latest: false
---
# HTTP Connector XML リファレンス

HTTP Connector は、イベントのリスンや、HTTP または HTTPS プロトコルに基づいた操作の実行を行います。HTTPS プロトコルを使用するには、設定に TLS コンテキスト子要素が必要です (次のセクションで説明)。Mule 4.0 以降では、リスナーおよび要求属性にアクセスするための DataWeave 構文がサポートされます。Mule では引き続き Mule Expression Language (MEL) がサポートされます。このドキュメントの各表では両方の構文がマップされています。

## [](#リスナー)リスナー

listener-config 親要素では、リスンポートや tls:context などの接続要素が、子 listener-connection 要素内に整理されています。接続要素は、http:listener-config の子要素です (次のコードを参照)。

```xml
<http:listener-config name="lisConfig" basePath="api">
  <http:listener-connection protocol="https" port="${serverPort}" host="localhost" usePersistentConnections="true">
    <tls:context>
      <tls:key-store path="keystore.jks" keyPassword="key" password="pass"/>
    </tls:context>
  </http:listener-connection>
</http:listener-config>
```

次のコードは、HTTP リスナーをフローに配置します。

```xml
<flow name="server">
  <http:listener path="test" allowedMethods="GET" config-ref="lisConfig"/>
  <logger message="HEY"/>
</flow>
```

HTTP リスナー属性にアクセスするには、次の表に示す DataWeave 構文を使用します。

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 15%;">
<col style="width: 45%;">
<col style="width: 40%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">HTTP オブジェクト</th>
<th class="tableblock halign-left valign-top">3.x</th>
<th class="tableblock halign-left valign-top">4.x</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>メソッド</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.method’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.method]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Path (パス)</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.listener.path’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.listenerPath]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>相対パス</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.relative.path’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.relativePath]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>要求 URI</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.request.uri’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.requestUri]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>クエリ文字列</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.query.string’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.queryString]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>クエリパラメーター</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.query.params’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.queryParams]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>URI パラメーター</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.uri.params’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.uriParams]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>バージョン</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.version’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.version]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>スキーマ</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.scheme’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.scheme]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>ヘッダー</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.headers]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>リモートアドレス</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.remote.address’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.remoteAddress]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>クライアント証明書</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.client.cert’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.clientCertificate]</p>
</div></div></td>
</tr>
</tbody>
</table>

## [](#http-要求)HTTP 要求

リスナーと同様に、request-config 親要素では、要求の接続要素が子 request-connection 要素内に整理されています (次のコードを参照)。

```xml
<http:request-config name="reqConfig" basePath="api/v2">
  <http:request-connection protocol="HTTP" port="${clientPort}" host="localhost">
    <tls:context>
      <tls:trust-store path="ssltest-cacerts.jks" password="changeit"/>
    </tls:context>
    <http:authentication>
      <http:basic-authentication username="#[user]" password="#[password]" preemptive="#[preemptive]" />
    </http:authentication>
  </http:request-connection>
</http:requester-config>
```

次のコードは、HTTP 要求をフローに配置します。HTTP 要求は HttpResponseAttributes を返します。

```xml
<flow name="client">
   <http:request path="/" config-ref="reqConfig"/>
</flow>
```

HTTP 要求属性にアクセスするには、次の表に示す DataWeave 構文を使用します。

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 15%;">
<col style="width: 45%;">
<col style="width: 40%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">HTTP オブジェクト</th>
<th class="tableblock halign-left valign-top">3.x</th>
<th class="tableblock halign-left valign-top">4.x</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>状況コード</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.status]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.statusCode]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>理由を示す語句</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties.’http.reason’]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.reasonPhrase]</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>ヘッダー</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[inboundProperties]</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>#[attributes.headers]</p>
</div></div></td>
</tr>
</tbody>
</table>

## [](#http-要求応答およびエラー応答の本文)HTTP 要求、応答、およびエラー応答の本文

HTTP 要求、応答、およびエラー応答の本文は、必要に応じて定義します。本文要素を明示的に定義しない場合、要求または応答はデフォルトのペイロードを返します。

次の例の要求では、Custom body (カスタム本文)、キー=値クエリパラメーター、値が ​`custom`​ の X-Custom ヘッダーが定義されます。​`uriParamsMap`​ 変数によって URI パラメーター ​`uriParam`​ が入力されます。

```xml
<http:request path="/{uriParam}/test"  config-ref="reqConfig">
   <http:body>
       #['Custom body']
   </http:body>
   <http:headers>
       #[{'X-Custom' : 'custom'}]
   </http:headers>
   <http:uri-params>
       #[uriParamsMap]
   </http:uri-params>
   <http:query-params>
       #[{'key’' : 'value’'}]
   </http:query-params>
</http:request>
```

次のコードには、明示的に定義された本文要素がありません。返される値は、デフォルトのペイロードです。このペイロードには成功した実行の応答が定義されており、状況コード 200、理由を示す語句 ​`Ok`​、ヘッダーとして ​`Name`​ とその値 ​`content`​ および ​`Something`​ とその値 ​`someValue`​ が含まれます。

```xml
<http:listener path="test" allowedMethods="GET" config-ref="lisConfig">
   <http:response statusCode="200" reasonPhrase="Ok">
       <http:headers>
           #[{"Name" : "content", "Something" : someValue}]
       </http:headers>
   </http:response>
</http:listener>
```

次のコードには失敗した実行の応答が定義されており、状況コード 502、理由を示す語句 ​`Failure`​、ヘッダーとして ​`Error`​ とその値 ​`FIRE`​、本文として ​`Oops, something went terribly wrong`​ が含まれます。

```xml
<http:listener path="test" allowedMethods="GET" config-ref="lisConfig">
   <http:error-response statusCode="502" reasonPhrase="Failure">
       <http:body>
           #[‘Oops, something went terribly wrong.’]
       </http:body>
       <http:headers>
           #[{"Error" : "FIRE"}]
       </http:headers>
   </http:error-response>
</http:listener>
```

## [](#http-操作リファレンス)HTTP 操作リファレンス

次のコードは、静的リソースの読み込み操作の構文を示します。

```xml
<flow name="server">
   <http:listener path="test" allowedMethods="GET" config-ref="lisConfig"/>
   <http:load-static-resource resourceBasePath="root" defaultFile="index.html"/>
</flow>
```

次の例は、基本セキュリティ条件操作の構文を示します。

```xml
<flow name="listenerBasicAuth">
   <http:listener config-ref="listenerConfigBasicAuth" path="/basic"/>
   <http:basic-security-filter realm="mule-realm"/>
   <logger message="TestBasicAuthOk"/>
</flow>
```

## [](#関連情報)関連情報

- [HTTP Connector の概要](https://docs.mulesoft.com/jp/http-connector/1.5/)
- [HTTP Connector リファレンス](https://docs.mulesoft.com/jp/http-connector/1.5/http-documentation)