public class RestTemplate extends InterceptingHttpAccessor implements RestOperations
HttpURLConnection、Apache HttpComponents などの基盤となる HTTP クライアントライブラリを介してシンプルなテンプレートメソッド API を公開します。RestTemplate は、頻度の低いケースをサポートする一般化された exchange および execute メソッドに加えて、HTTP メソッドによる一般的なシナリオのテンプレートを提供します。
注意 : 5.0 の時点で、ノンブロッキングのリアクティブ org.springframework.web.reactive.client.WebClient は、RestTemplate の最新の代替手段を提供し、ストリーミングと同様に同期と非同期の両方を効率的にサポートします。RestTemplate は将来のバージョンで非推奨となり、主要な新機能は今後追加されません。
HttpMessageConverter, RequestCallback, ResponseExtractor, ResponseErrorHandlerlogger| コンストラクターと説明 |
|---|
RestTemplate() デフォルト設定を使用して、 RestTemplate の新しいインスタンスを作成します。 |
RestTemplate(ClientHttpRequestFactory requestFactory) 指定された ClientHttpRequestFactory に基づいて、RestTemplate の新しいインスタンスを作成します。 |
RestTemplate(java.util.List<HttpMessageConverter<?>> messageConverters) 使用する HttpMessageConverter の指定されたリストを使用して、RestTemplate の新しいインスタンスを作成します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
<T> RequestCallback | acceptHeaderRequestCallback(java.lang.Class<T> responseType) 指定されたレスポンス型に基づいてリクエスト Accept ヘッダーを設定する RequestCallback を返し、構成されたメッセージコンバーターと照合します。 |
void | delete(java.lang.String url, java.util.Map<java.lang.String,?> uriVariables) 指定された URI のリソースを削除します。 |
void | delete(java.lang.String url, java.lang.Object... uriVariables) 指定された URI のリソースを削除します。 |
void | delete(java.net.URI url) 指定された URL のリソースを削除します。 |
protected <T> T | doExecute(java.net.URI url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor) 指定された URI で指定されたメソッドを実行します。 |
<T> ResponseEntity<T> | exchange(RequestEntity<?> requestEntity, java.lang.Class<T> responseType) 指定された RequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(RequestEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) 指定された RequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(java.lang.String url, HttpMethod method, HttpEntity<?> requestEntity, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(java.lang.String url, HttpMethod method, HttpEntity<?> requestEntity, java.lang.Class<T> responseType, java.lang.Object... uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(java.lang.String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, java.util.Map<java.lang.String,?> uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(java.lang.String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, java.lang.Object... uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(java.net.URI url, HttpMethod method, HttpEntity<?> requestEntity, java.lang.Class<T> responseType) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(java.net.URI url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> T | execute(java.lang.String url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor, java.util.Map<java.lang.String,?> uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、 RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。 |
<T> T | execute(java.lang.String url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor, java.lang.Object... uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、 RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。 |
<T> T | execute(java.net.URI url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor) 指定された URL に対して HTTP メソッドを実行し、 RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。 |
ResponseErrorHandler | getErrorHandler() エラーハンドラーを返します。 |
<T> ResponseEntity<T> | getForEntity(java.lang.String url, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables)URI テンプレートで GET を実行して、表現を取得します。 |
<T> ResponseEntity<T> | getForEntity(java.lang.String url, java.lang.Class<T> responseType, java.lang.Object... uriVariables) 指定された URL で GET を実行して、エンティティを取得します。 |
<T> ResponseEntity<T> | getForEntity(java.net.URI url, java.lang.Class<T> responseType)URL で GET を実行して表現を取得します。 |
<T> T | getForObject(java.lang.String url, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables)URI テンプレートで GET を実行して、表現を取得します。 |
<T> T | getForObject(java.lang.String url, java.lang.Class<T> responseType, java.lang.Object... uriVariables) 指定された URL で GET を実行して、表現を取得します。 |
<T> T | getForObject(java.net.URI url, java.lang.Class<T> responseType)URL で GET を実行して表現を取得します。 |
java.util.List<HttpMessageConverter<?>> | getMessageConverters() メッセージ本文コンバーターのリストを返します。 |
UriTemplateHandler | getUriTemplateHandler() 設定済みの URI テンプレートハンドラーを返します。 |
protected void | handleResponse(java.net.URI url, HttpMethod method, ClientHttpResponse response) 指定されたレスポンスを処理し、適切なロギングを実行し、必要に応じて ResponseErrorHandler を呼び出します。 |
protected ResponseExtractor<HttpHeaders> | headersExtractor()HttpHeaders のレスポンス抽出プログラムを返します。 |
HttpHeaders | headForHeaders(java.lang.String url, java.util.Map<java.lang.String,?> uriVariables)URI テンプレートで指定されたリソースのすべてのヘッダーを取得します。 |
HttpHeaders | headForHeaders(java.lang.String url, java.lang.Object... uriVariables)URI テンプレートで指定されたリソースのすべてのヘッダーを取得します。 |
HttpHeaders | headForHeaders(java.net.URI url)URL で指定されたリソースのすべてのヘッダーを取得します。 |
<T> RequestCallback | httpEntityCallback(java.lang.Object requestBody) 指定されたオブジェクトをリクエストストリームに書き込む RequestCallback 実装を返します。 |
<T> RequestCallback | httpEntityCallback(java.lang.Object requestBody, java.lang.reflect.Type responseType)RequestCallback 実装を返します。指定されたレスポンス型に基づいて、リクエスト Accept ヘッダーを設定し、構成されたメッセージコンバーターに対してクロスチェックします。 |
java.util.Set<HttpMethod> | optionsForAllow(java.lang.String url, java.util.Map<java.lang.String,?> uriVariables) 指定された URI の Allow ヘッダーの値を返します。 |
java.util.Set<HttpMethod> | optionsForAllow(java.lang.String url, java.lang.Object... uriVariables) 指定された URI の Allow ヘッダーの値を返します。 |
java.util.Set<HttpMethod> | optionsForAllow(java.net.URI url) 指定された URL の Allow ヘッダーの値を返します。 |
<T> T | patchForObject(java.lang.String url, java.lang.Object request, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) 指定されたオブジェクトを URI テンプレートにパッチしてリソースを更新し、レスポンスで見つかった表現を返します。 |
<T> T | patchForObject(java.lang.String url, java.lang.Object request, java.lang.Class<T> responseType, java.lang.Object... uriVariables) 指定されたオブジェクトを URI テンプレートにパッチしてリソースを更新し、レスポンスで見つかった表現を返します。 |
<T> T | patchForObject(java.net.URI url, java.lang.Object request, java.lang.Class<T> responseType) 指定されたオブジェクトを URL にパッチしてリソースを更新し、レスポンスで見つかった表現を返します。 |
<T> ResponseEntity<T> | postForEntity(java.lang.String url, java.lang.Object request, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスを HttpEntity として返します。 |
<T> ResponseEntity<T> | postForEntity(java.lang.String url, java.lang.Object request, java.lang.Class<T> responseType, java.lang.Object... uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | postForEntity(java.net.URI url, java.lang.Object request, java.lang.Class<T> responseType) 指定されたオブジェクトを URL に POST して新しいリソースを作成し、レスポンスを ResponseEntity として返します。 |
java.net.URI | postForLocation(java.lang.String url, java.lang.Object request, java.util.Map<java.lang.String,?> uriVariables) 指定されたオブジェクトを URI テンプレートに POST することにより新しいリソースを作成し、 Location ヘッダーの値を返します。 |
java.net.URI | postForLocation(java.lang.String url, java.lang.Object request, java.lang.Object... uriVariables) 指定されたオブジェクトを URI テンプレートに POST することにより新しいリソースを作成し、 Location ヘッダーの値を返します。 |
java.net.URI | postForLocation(java.net.URI url, java.lang.Object request) 指定されたオブジェクトを URL に POST して新しいリソースを作成し、 Location ヘッダーの値を返します。 |
<T> T | postForObject(java.lang.String url, java.lang.Object request, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスで見つかった表現を返します。 |
<T> T | postForObject(java.lang.String url, java.lang.Object request, java.lang.Class<T> responseType, java.lang.Object... uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスで見つかった表現を返します。 |
<T> T | postForObject(java.net.URI url, java.lang.Object request, java.lang.Class<T> responseType) 指定されたオブジェクトを URL に POST することで新しいリソースを作成し、レスポンスで見つかった表現を返します。 |
void | put(java.lang.String url, java.lang.Object request, java.util.Map<java.lang.String,?> uriVariables) 指定されたオブジェクトを URI テンプレートに PUT することにより、新しいリソースを作成します。 |
void | put(java.lang.String url, java.lang.Object request, java.lang.Object... uriVariables) 指定されたオブジェクトを URI に PUT することにより、リソースを作成または更新します。 |
void | put(java.net.URI url, java.lang.Object request) 指定されたオブジェクトを URL に PUT することにより、新しいリソースを作成します。 |
<T> ResponseExtractor<ResponseEntity<T>> | responseEntityExtractor(java.lang.reflect.Type responseType)ResponseEntity を準備する ResponseExtractor を返します。 |
void | setDefaultUriVariables(java.util.Map<java.lang.String,?> uriVars) デフォルトの URI 変数値を構成します。 |
void | setErrorHandler(ResponseErrorHandler errorHandler) エラーハンドラーを設定します。 |
void | setMessageConverters(java.util.List<HttpMessageConverter<?>> messageConverters) 使用するメッセージ本文コンバーターを設定します。 |
void | setUriTemplateHandler(UriTemplateHandler handler)URI テンプレートを展開するための戦略を構成します。 |
getInterceptors, getRequestFactory, setInterceptors, setRequestFactorycreateRequestpublic RestTemplate()
RestTemplate の新しいインスタンスを作成します。デフォルトの HttpMessageConverters が初期化されます。public RestTemplate(ClientHttpRequestFactory requestFactory)
ClientHttpRequestFactory に基づいて、RestTemplate の新しいインスタンスを作成します。requestFactory - 使用する HTTP リクエストファクトリ SimpleClientHttpRequestFactory, HttpComponentsClientHttpRequestFactorypublic RestTemplate(java.util.List<HttpMessageConverter<?>> messageConverters)
HttpMessageConverter の指定されたリストを使用して、RestTemplate の新しいインスタンスを作成します。messageConverters - 使用する HttpMessageConverter のリスト public void setMessageConverters(java.util.List<HttpMessageConverter<?>> messageConverters)
これらのコンバーターは、HTTP リクエストとレスポンスの変換に使用されます。
public java.util.List<HttpMessageConverter<?>> getMessageConverters()
返された List はアクティブで、追加される場合があります。
public void setErrorHandler(ResponseErrorHandler errorHandler)
デフォルトでは、RestTemplate は DefaultResponseErrorHandler を使用します。
public ResponseErrorHandler getErrorHandler()
public void setDefaultUriVariables(java.util.Map<java.lang.String,?> uriVars)
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory(); handler.setDefaultUriVariables(...); RestTemplate restTemplate = new RestTemplate(); restTemplate.setUriTemplateHandler(handler);
uriVars - デフォルトの URI 変数値 public void setUriTemplateHandler(UriTemplateHandler handler)
デフォルトでは、DefaultUriBuilderFactory が使用され、後方互換性のために、エンコードモードは URI_COMPONENT に設定されます。5.0.8 では、TEMPLATE_AND_VALUES を使用することを優先します。
注意 : 5.0 では、使用するデフォルトとして DefaultUriTemplateHandler(4.3 で非推奨)から DefaultUriBuilderFactory への切り替えにより、parsePath プロパティに異なるデフォルトが導入されます(false から true への切り替え)。
handler - 使用する URI テンプレートハンドラー public UriTemplateHandler getUriTemplateHandler()
@Nullable public <T> T getForObject(java.lang.String url, java.lang.Class<T> responseType, java.lang.Object... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の getForObject url - URLresponseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientException@Nullable public <T> T getForObject(java.lang.String url, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の getForObject url - URLresponseType - 戻り値の型 uriVariables - URI テンプレートの変数を含むマップ RestClientException@Nullable public <T> T getForObject(java.net.URI url, java.lang.Class<T> responseType) throws RestClientException
RestOperationsRestOperations 内の getForObject url - URLresponseType - 戻り値の型 RestClientExceptionpublic <T> ResponseEntity<T> getForEntity(java.lang.String url, java.lang.Class<T> responseType, java.lang.Object... uriVariables) throws RestClientException
RestOperationsResponseEntity に保存されます。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の getForEntity url - URLresponseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> getForEntity(java.lang.String url, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsResponseEntity に保存されます。URI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の getForEntity url - URLresponseType - 戻り値の型 uriVariables - URI テンプレートの変数を含むマップ RestClientExceptionpublic <T> ResponseEntity<T> getForEntity(java.net.URI url, java.lang.Class<T> responseType) throws RestClientException
RestOperationsResponseEntity に保存されます。RestOperations 内の getForEntity url - URLresponseType - 戻り値の型 RestClientExceptionpublic HttpHeaders headForHeaders(java.lang.String url, java.lang.Object... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の headForHeaders url - URLuriVariables - テンプレートを展開する変数 RestClientExceptionpublic HttpHeaders headForHeaders(java.lang.String url, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の headForHeaders url - URLuriVariables - URI テンプレートの変数を含むマップ RestClientExceptionpublic HttpHeaders headForHeaders(java.net.URI url) throws RestClientException
RestOperationsRestOperations 内の headForHeaders url - URLRestClientException@Nullable public java.net.URI postForLocation(java.lang.String url, @Nullable java.lang.Object request, java.lang.Object... uriVariables) throws RestClientException
RestOperationsLocation ヘッダーの値を返します。このヘッダーは通常、新しいリソースが保存されている場所を示します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForLocation url - URLrequest - POST されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 Location ヘッダーの値 RestClientExceptionHttpEntity@Nullable public java.net.URI postForLocation(java.lang.String url, @Nullable java.lang.Object request, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsLocation ヘッダーの値を返します。このヘッダーは通常、新しいリソースが保存されている場所を示します。URI テンプレート変数は、指定されたマップを使用して展開されます。
request パラメーターは、追加の HTTP ヘッダーをリクエストに追加するために HttpEntity にすることができます
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForLocation url - URLrequest - POST されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 Location ヘッダーの値 RestClientExceptionHttpEntity@Nullable public java.net.URI postForLocation(java.net.URI url, @Nullable java.lang.Object request) throws RestClientException
RestOperationsLocation ヘッダーの値を返します。このヘッダーは通常、新しいリソースが保存されている場所を示します。 リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForLocation url - URLrequest - POST されるオブジェクト (null の場合があります)Location ヘッダーの値 RestClientExceptionHttpEntity@Nullable public <T> T postForObject(java.lang.String url, @Nullable java.lang.Object request, java.lang.Class<T> responseType, java.lang.Object... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForObject url - URLrequest - POST されるオブジェクト (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntity@Nullable public <T> T postForObject(java.lang.String url, @Nullable java.lang.Object request, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForObject url - URLrequest - POST されるオブジェクト (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntity@Nullable public <T> T postForObject(java.net.URI url, @Nullable java.lang.Object request, java.lang.Class<T> responseType) throws RestClientException
RestOperations リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForObject url - URLrequest - POST されるオブジェクト (null の場合があります)responseType - 戻り値の型 RestClientExceptionHttpEntitypublic <T> ResponseEntity<T> postForEntity(java.lang.String url, @Nullable java.lang.Object request, java.lang.Class<T> responseType, java.lang.Object... uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForEntity url - URLrequest - POST されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntitypublic <T> ResponseEntity<T> postForEntity(java.lang.String url, @Nullable java.lang.Object request, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsHttpEntity として返します。URI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForEntity url - URLrequest - POST されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntitypublic <T> ResponseEntity<T> postForEntity(java.net.URI url, @Nullable java.lang.Object request, java.lang.Class<T> responseType) throws RestClientException
RestOperationsResponseEntity として返します。 リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForEntity url - URLrequest - POST されるオブジェクト (null の場合があります)RestClientExceptionHttpEntitypublic void put(java.lang.String url,
@Nullable
java.lang.Object request,
java.lang.Object... uriVariables)
throws RestClientExceptionRestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
RestOperations 内の put url - URLrequest - PUT されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntitypublic void put(java.lang.String url,
@Nullable
java.lang.Object request,
java.util.Map<java.lang.String,?> uriVariables)
throws RestClientExceptionRestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
RestOperations 内の put url - URLrequest - PUT されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntitypublic void put(java.net.URI url,
@Nullable
java.lang.Object request)
throws RestClientExceptionRestOperations リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
RestOperations 内の put url - URLrequest - PUT されるオブジェクト (null の場合があります)RestClientExceptionHttpEntity@Nullable public <T> T patchForObject(java.lang.String url, @Nullable java.lang.Object request, java.lang.Class<T> responseType, java.lang.Object... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。Apache HttpComponents または OkHttp リクエストファクトリを使用する必要があります。
RestOperations 内の patchForObject url - URLrequest - パッチされるオブジェクト (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntity, InterceptingHttpAccessor.setRequestFactory(org.springframework.http.client.ClientHttpRequestFactory), HttpComponentsAsyncClientHttpRequestFactory, OkHttp3ClientHttpRequestFactory@Nullable public <T> T patchForObject(java.lang.String url, @Nullable java.lang.Object request, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。Apache HttpComponents または OkHttp リクエストファクトリを使用する必要があります。
RestOperations 内の patchForObject url - URLrequest - パッチされるオブジェクト (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntity, InterceptingHttpAccessor.setRequestFactory(org.springframework.http.client.ClientHttpRequestFactory), HttpComponentsAsyncClientHttpRequestFactory, OkHttp3ClientHttpRequestFactory@Nullable public <T> T patchForObject(java.net.URI url, @Nullable java.lang.Object request, java.lang.Class<T> responseType) throws RestClientException
RestOperations リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。Apache HttpComponents または OkHttp リクエストファクトリを使用する必要があります。
RestOperations 内の patchForObject url - URLrequest - パッチされるオブジェクト (null の場合があります)responseType - 戻り値の型 RestClientExceptionHttpEntity, InterceptingHttpAccessor.setRequestFactory(org.springframework.http.client.ClientHttpRequestFactory), HttpComponentsAsyncClientHttpRequestFactory, OkHttp3ClientHttpRequestFactorypublic void delete(java.lang.String url,
java.lang.Object... uriVariables)
throws RestClientExceptionRestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の delete url - URLuriVariables - テンプレートで展開する変数 RestClientExceptionpublic void delete(java.lang.String url,
java.util.Map<java.lang.String,?> uriVariables)
throws RestClientExceptionRestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の delete url - URLuriVariables - テンプレートを展開する変数 RestClientExceptionpublic void delete(java.net.URI url)
throws RestClientExceptionRestOperationsRestOperations 内の delete url - URLRestClientExceptionpublic java.util.Set<HttpMethod> optionsForAllow(java.lang.String url, java.lang.Object... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の optionsForAllow url - URLuriVariables - テンプレートで展開する変数 RestClientExceptionpublic java.util.Set<HttpMethod> optionsForAllow(java.lang.String url, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の optionsForAllow url - URLuriVariables - テンプレートで展開する変数 RestClientExceptionpublic java.util.Set<HttpMethod> optionsForAllow(java.net.URI url) throws RestClientException
RestOperationsRestOperations 内の optionsForAllow url - URLRestClientExceptionpublic <T> ResponseEntity<T> exchange(java.lang.String url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, java.lang.Class<T> responseType, java.lang.Object... uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文)は null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(java.lang.String url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, java.lang.Class<T> responseType, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(java.net.URI url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, java.lang.Class<T> responseType) throws RestClientException
RestOperationsResponseEntity として返します。RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 RestClientExceptionpublic <T> ResponseEntity<T> exchange(java.lang.String url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, java.lang.Object... uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。指定された ParameterizedTypeReference は、一般的な型情報を渡すために使用されます。
ParameterizedTypeReference<List<MyBean>> myBean =
new ParameterizedTypeReference<List<MyBean>>() {};
ResponseEntity<List<MyBean>> response =
template.exchange("http://example.com",HttpMethod.GET, null, myBean);
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(java.lang.String url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。指定された ParameterizedTypeReference は、一般的な型情報を渡すために使用されます。
ParameterizedTypeReference<List<MyBean>> myBean =
new ParameterizedTypeReference<List<MyBean>>() {};
ResponseEntity<List<MyBean>> response =
template.exchange("http://example.com",HttpMethod.GET, null, myBean);
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(java.net.URI url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) throws RestClientException
RestOperationsResponseEntity として返します。指定された ParameterizedTypeReference は、一般的な型情報を渡すために使用されます。
ParameterizedTypeReference<List<MyBean>> myBean =
new ParameterizedTypeReference<List<MyBean>>() {};
ResponseEntity<List<MyBean>> response =
template.exchange("http://example.com",HttpMethod.GET, null, myBean);
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 RestClientExceptionpublic <T> ResponseEntity<T> exchange(RequestEntity<?> requestEntity, java.lang.Class<T> responseType) throws RestClientException
RestOperationsRequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。通常、たとえば RequestEntity の静的ビルダーメソッドと組み合わせて使用されます。
MyRequest body = ...
RequestEntity request = RequestEntity
.post(new URI("http://example.com/foo"))
.accept(MediaType.APPLICATION_JSON)
.body(body);
ResponseEntity<MyResponse> response = template.exchange(request, MyResponse.class);
RestOperations 内の exchange requestEntity - リクエストに書き込むエンティティ responseType - 戻り値の型 RestClientExceptionpublic <T> ResponseEntity<T> exchange(RequestEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) throws RestClientException
RestOperationsRequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。指定された ParameterizedTypeReference は、一般的な型情報を渡すために使用されます。
MyRequest body = ...
RequestEntity request = RequestEntity
.post(new URI("http://example.com/foo"))
.accept(MediaType.APPLICATION_JSON)
.body(body);
ParameterizedTypeReference<List<MyResponse>> myBean =
new ParameterizedTypeReference<List<MyResponse>>() {};
ResponseEntity<List<MyResponse>> response = template.exchange(request, myBean);
RestOperations 内の exchange requestEntity - リクエストに書き込むエンティティ responseType - 戻り値の型 RestClientException@Nullable public <T> T execute(java.lang.String url, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor, java.lang.Object... uriVariables) throws RestClientException
RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RequestCallback または ResponseExtractor のみを提供し、両方ではない場合は、次の使用を検討してください。
RestOperations 内の execute url - URLmethod - HTTP メソッド (GET、POST など)requestCallback - リクエストを準備するオブジェクト responseExtractor - レスポンスから戻り値を抽出するオブジェクト uriVariables - テンプレートで展開する変数 ResponseExtractor によって返される任意のオブジェクト RestClientException@Nullable public <T> T execute(java.lang.String url, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor, java.util.Map<java.lang.String,?> uriVariables) throws RestClientException
RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。URI テンプレート変数は、指定された URI 変数マップを使用して展開されます。
RequestCallback または ResponseExtractor のみを提供し、両方ではない場合は、次の使用を検討してください。
RestOperations 内の execute url - URLmethod - HTTP メソッド (GET、POST など)requestCallback - リクエストを準備するオブジェクト responseExtractor - レスポンスから戻り値を抽出するオブジェクト uriVariables - テンプレートで展開する変数 ResponseExtractor によって返される任意のオブジェクト RestClientException@Nullable public <T> T execute(java.net.URI url, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor) throws RestClientException
RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。RequestCallback または ResponseExtractor のみを提供し、両方ではない場合は、次の使用を検討してください。
RestOperations 内の execute url - URLmethod - HTTP メソッド (GET、POST など)requestCallback - リクエストを準備するオブジェクト responseExtractor - レスポンスから戻り値を抽出するオブジェクト ResponseExtractor によって返される任意のオブジェクト RestClientException@Nullable protected <T> T doExecute(java.net.URI url, @Nullable HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor) throws RestClientException
ClientHttpRequest は RequestCallback を使用して処理されます。ResponseExtractor を使用したレスポンス。
url - 接続する完全に展開された URLmethod - 実行する HTTP メソッド (GET、POST など)requestCallback - リクエストを準備するオブジェクト (null にすることができます)responseExtractor - レスポンスから戻り値を抽出するオブジェクト (null にすることができます)ResponseExtractor によって返される任意のオブジェクト RestClientExceptionprotected void handleResponse(java.net.URI url,
HttpMethod method,
ClientHttpResponse response)
throws java.io.IOExceptionResponseErrorHandler を呼び出します。サブクラスでオーバーライドできます。
url - 接続する完全に展開された URLmethod - 実行する HTTP メソッド (GET、POST など)response - 結果の ClientHttpResponsejava.io.IOException - ResponseErrorHandler から伝播された場合 setErrorHandler(org.springframework.web.client.ResponseErrorHandler)public <T> RequestCallback acceptHeaderRequestCallback(java.lang.Class<T> responseType)
Accept ヘッダーを設定する RequestCallback を返し、構成されたメッセージコンバーターと照合します。public <T> RequestCallback httpEntityCallback(@Nullable java.lang.Object requestBody)
RequestCallback 実装を返します。public <T> RequestCallback httpEntityCallback(@Nullable java.lang.Object requestBody, java.lang.reflect.Type responseType)
RequestCallback 実装を返します。Accept ヘッダーを設定します。public <T> ResponseExtractor<ResponseEntity<T>> responseEntityExtractor(java.lang.reflect.Type responseType)
ResponseEntity を準備する ResponseExtractor を返します。protected ResponseExtractor<HttpHeaders> headersExtractor()
HttpHeaders のレスポンス抽出プログラムを返します。