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 は将来のバージョンで非推奨となり、今後主要な新機能は追加されません。詳細とサンプルコードについては、Spring Framework リファレンスドキュメントの WebClient セクションを参照してください。
HttpMessageConverter, RequestCallback, ResponseExtractor, ResponseErrorHandlerlogger| コンストラクターと説明 |
|---|
RestTemplate() デフォルト設定を使用して、 RestTemplate の新しいインスタンスを作成します。 |
RestTemplate(ClientHttpRequestFactory requestFactory) 指定された ClientHttpRequestFactory に基づいて、RestTemplate の新しいインスタンスを作成します。 |
RestTemplate(ListSE<HttpMessageConverter<?>> messageConverters) 使用する HttpMessageConverter の指定されたリストを使用して、RestTemplate の新しいインスタンスを作成します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
<T> RequestCallback | acceptHeaderRequestCallback(ClassSE<T> responseType) 指定されたレスポンス型に基づいてリクエスト Accept ヘッダーを設定する RequestCallback を返し、構成されたメッセージコンバーターと照合します。 |
void | delete(StringSE url, MapSE<StringSE,?> uriVariables) 指定された URI のリソースを削除します。 |
void | delete(StringSE url, ObjectSE... uriVariables) 指定された URI のリソースを削除します。 |
void | delete(URISE url) 指定された URL のリソースを削除します。 |
protected <T> T | doExecute(URISE url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor) 指定された URI で指定されたメソッドを実行します。 |
<T> ResponseEntity<T> | exchange(RequestEntity<?> requestEntity, ClassSE<T> responseType) 指定された RequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(RequestEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) 指定された RequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(StringSE url, HttpMethod method, HttpEntity<?> requestEntity, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(StringSE url, HttpMethod method, HttpEntity<?> requestEntity, ClassSE<T> responseType, ObjectSE... uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(StringSE url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, MapSE<StringSE,?> uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(StringSE url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, ObjectSE... uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(URISE url, HttpMethod method, HttpEntity<?> requestEntity, ClassSE<T> responseType) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(URISE url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) 指定された URI テンプレートに対して HTTP メソッドを実行し、指定されたリクエストエンティティをリクエストに書き込み、レスポンスを ResponseEntity として返します。 |
<T> T | execute(StringSE url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor, MapSE<StringSE,?> uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、 RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。 |
<T> T | execute(StringSE url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor, ObjectSE... uriVariables) 指定された URI テンプレートに対して HTTP メソッドを実行し、 RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。 |
<T> T | execute(URISE url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor) 指定された URL に対して HTTP メソッドを実行し、 RequestCallback を使用してリクエストを準備し、ResponseExtractor を使用してレスポンスを読み取ります。 |
ResponseErrorHandler | getErrorHandler() エラーハンドラーを返します。 |
<T> ResponseEntity<T> | getForEntity(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables)URI テンプレートで GET を実行して、表現を取得します。 |
<T> ResponseEntity<T> | getForEntity(StringSE url, ClassSE<T> responseType, ObjectSE... uriVariables) 指定された URL で GET を実行して、エンティティを取得します。 |
<T> ResponseEntity<T> | getForEntity(URISE url, ClassSE<T> responseType)URL で GET を実行して表現を取得します。 |
<T> T | getForObject(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables)URI テンプレートで GET を実行して、表現を取得します。 |
<T> T | getForObject(StringSE url, ClassSE<T> responseType, ObjectSE... uriVariables) 指定された URL で GET を実行して、表現を取得します。 |
<T> T | getForObject(URISE url, ClassSE<T> responseType)URL で GET を実行して表現を取得します。 |
ListSE<HttpMessageConverter<?>> | getMessageConverters() メッセージ本文コンバーターのリストを返します。 |
UriTemplateHandler | getUriTemplateHandler() 設定済みの URI テンプレートハンドラーを返します。 |
protected void | handleResponse(URISE url, HttpMethod method, ClientHttpResponse response) 指定されたレスポンスを処理し、適切なロギングを実行し、必要に応じて ResponseErrorHandler を呼び出します。 |
protected ResponseExtractor<HttpHeaders> | headersExtractor()HttpHeaders のレスポンス抽出プログラムを返します。 |
HttpHeaders | headForHeaders(StringSE url, MapSE<StringSE,?> uriVariables)URI テンプレートで指定されたリソースのすべてのヘッダーを取得します。 |
HttpHeaders | headForHeaders(StringSE url, ObjectSE... uriVariables)URI テンプレートで指定されたリソースのすべてのヘッダーを取得します。 |
HttpHeaders | headForHeaders(URISE url)URL で指定されたリソースのすべてのヘッダーを取得します。 |
<T> RequestCallback | httpEntityCallback(ObjectSE requestBody) 指定されたオブジェクトをリクエストストリームに書き込む RequestCallback 実装を返します。 |
<T> RequestCallback | httpEntityCallback(ObjectSE requestBody, TypeSE responseType)RequestCallback 実装を返します。指定されたレスポンス型に基づいて、リクエスト Accept ヘッダーを設定し、構成されたメッセージコンバーターに対してクロスチェックします。 |
SetSE<HttpMethod> | optionsForAllow(StringSE url, MapSE<StringSE,?> uriVariables) 指定された URI の Allow ヘッダーの値を返します。 |
SetSE<HttpMethod> | optionsForAllow(StringSE url, ObjectSE... uriVariables) 指定された URI の Allow ヘッダーの値を返します。 |
SetSE<HttpMethod> | optionsForAllow(URISE url) 指定された URL の Allow ヘッダーの値を返します。 |
<T> T | patchForObject(StringSE url, ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) 指定されたオブジェクトを URI テンプレートにパッチしてリソースを更新し、レスポンスで見つかった表現を返します。 |
<T> T | patchForObject(StringSE url, ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) 指定されたオブジェクトを URI テンプレートにパッチしてリソースを更新し、レスポンスで見つかった表現を返します。 |
<T> T | patchForObject(URISE url, ObjectSE request, ClassSE<T> responseType) 指定されたオブジェクトを URL にパッチしてリソースを更新し、レスポンスで見つかった表現を返します。 |
<T> ResponseEntity<T> | postForEntity(StringSE url, ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスを HttpEntity として返します。 |
<T> ResponseEntity<T> | postForEntity(StringSE url, ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | postForEntity(URISE url, ObjectSE request, ClassSE<T> responseType) 指定されたオブジェクトを URL に POST して新しいリソースを作成し、レスポンスを ResponseEntity として返します。 |
URISE | postForLocation(StringSE url, ObjectSE request, MapSE<StringSE,?> uriVariables) 指定されたオブジェクトを URI テンプレートに POST することにより新しいリソースを作成し、 Location ヘッダーの値を返します。 |
URISE | postForLocation(StringSE url, ObjectSE request, ObjectSE... uriVariables) 指定されたオブジェクトを URI テンプレートに POST することにより新しいリソースを作成し、 Location ヘッダーの値を返します。 |
URISE | postForLocation(URISE url, ObjectSE request) 指定されたオブジェクトを URL に POST して新しいリソースを作成し、 Location ヘッダーの値を返します。 |
<T> T | postForObject(StringSE url, ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスで見つかった表現を返します。 |
<T> T | postForObject(StringSE url, ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) 指定されたオブジェクトを URI テンプレートに POST して新しいリソースを作成し、レスポンスで見つかった表現を返します。 |
<T> T | postForObject(URISE url, ObjectSE request, ClassSE<T> responseType) 指定されたオブジェクトを URL に POST することで新しいリソースを作成し、レスポンスで見つかった表現を返します。 |
void | put(StringSE url, ObjectSE request, MapSE<StringSE,?> uriVariables) 指定されたオブジェクトを URI テンプレートに PUT することにより、新しいリソースを作成します。 |
void | put(StringSE url, ObjectSE request, ObjectSE... uriVariables) 指定されたオブジェクトを URI に PUT することにより、リソースを作成または更新します。 |
void | put(URISE url, ObjectSE request) 指定されたオブジェクトを URL に PUT することにより、新しいリソースを作成します。 |
<T> ResponseExtractor<ResponseEntity<T>> | responseEntityExtractor(TypeSE responseType)ResponseEntity を準備する ResponseExtractor を返します。 |
void | setDefaultUriVariables(MapSE<StringSE,?> uriVars) デフォルトの URI 変数値を構成します。 |
void | setErrorHandler(ResponseErrorHandler errorHandler) エラーハンドラーを設定します。 |
void | setMessageConverters(ListSE<HttpMessageConverter<?>> messageConverters) 使用するメッセージ本文コンバーターを設定します。 |
void | setUriTemplateHandler(UriTemplateHandler handler)URI テンプレートを展開するための戦略を構成します。 |
getInterceptors, getRequestFactory, setInterceptors, setRequestFactorycreateRequestcloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic RestTemplate()
RestTemplate の新しいインスタンスを作成します。デフォルトの HttpMessageConverters が初期化されます。public RestTemplate(ClientHttpRequestFactory requestFactory)
ClientHttpRequestFactory に基づいて、RestTemplate の新しいインスタンスを作成します。requestFactory - 使用する HTTP リクエストファクトリ SimpleClientHttpRequestFactory, HttpComponentsClientHttpRequestFactorypublic RestTemplate(ListSE<HttpMessageConverter<?>> messageConverters)
HttpMessageConverter の指定されたリストを使用して、RestTemplate の新しいインスタンスを作成します。messageConverters - 使用する HttpMessageConverter のリスト public void setMessageConverters(ListSE<HttpMessageConverter<?>> messageConverters)
これらのコンバーターは、HTTP リクエストとレスポンスの変換に使用されます。
public ListSE<HttpMessageConverter<?>> getMessageConverters()
返された ListSE はアクティブであり、追加される場合があります。
public void setErrorHandler(ResponseErrorHandler errorHandler)
デフォルトでは、RestTemplate は DefaultResponseErrorHandler を使用します。
public ResponseErrorHandler getErrorHandler()
public void setDefaultUriVariables(MapSE<StringSE,?> 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(StringSE url, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の getForObject url - URLresponseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientException@Nullable public <T> T getForObject(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の getForObject url - URLresponseType - 戻り値の型 uriVariables - URI テンプレートの変数を含むマップ RestClientException@Nullable public <T> T getForObject(URISE url, ClassSE<T> responseType) throws RestClientException
RestOperationsRestOperations 内の getForObject url - URLresponseType - 戻り値の型 RestClientExceptionpublic <T> ResponseEntity<T> getForEntity(StringSE url, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperationsResponseEntity に保存されます。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の getForEntity url - URLresponseType - 戻り値の型 uriVariables - テンプレートを展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> getForEntity(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsResponseEntity に保存されます。URI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の getForEntity url - URLresponseType - 戻り値の型 uriVariables - URI テンプレートの変数を含むマップ RestClientExceptionpublic <T> ResponseEntity<T> getForEntity(URISE url, ClassSE<T> responseType) throws RestClientException
RestOperationsResponseEntity に保存されます。RestOperations 内の getForEntity url - URLresponseType - 戻り値の型 RestClientExceptionpublic HttpHeaders headForHeaders(StringSE url, ObjectSE... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の headForHeaders url - URLuriVariables - テンプレートを展開する変数 RestClientExceptionpublic HttpHeaders headForHeaders(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の headForHeaders url - URLuriVariables - URI テンプレートの変数を含むマップ RestClientExceptionpublic HttpHeaders headForHeaders(URISE url) throws RestClientException
RestOperationsRestOperations 内の headForHeaders url - URLRestClientException@Nullable public URISE postForLocation(StringSE url, @Nullable ObjectSE request, ObjectSE... 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 URISE postForLocation(StringSE url, @Nullable ObjectSE request, MapSE<StringSE,?> 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 URISE postForLocation(URISE url, @Nullable ObjectSE 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(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... 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(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> 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(URISE url, @Nullable ObjectSE request, ClassSE<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(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... 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(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> 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(URISE url, @Nullable ObjectSE request, ClassSE<T> responseType) throws RestClientException
RestOperationsResponseEntity として返します。 リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
エンティティの本体、または request 自体を MultiValueMap にして、マルチパートリクエストを作成できます。MultiValueMap の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity です。MultiValueMap は、MultipartBodyBuilder を使用して簡単に構築できます。
RestOperations 内の postForEntity url - URLrequest - POST されるオブジェクト (null の場合があります)RestClientExceptionHttpEntitypublic void put(StringSE url, @Nullable ObjectSE request, ObjectSE... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
RestOperations 内の put url - URLrequest - PUT されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntitypublic void put(StringSE url, @Nullable ObjectSE request, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
RestOperations 内の put url - URLrequest - PUT されるオブジェクト (null の場合があります)uriVariables - テンプレートを展開する変数 RestClientExceptionHttpEntitypublic void put(URISE url, @Nullable ObjectSE request) throws RestClientException
RestOperations リクエストに追加の HTTP ヘッダーを追加するには、request パラメーターを HttpEntity にすることができます。
RestOperations 内の put url - URLrequest - PUT されるオブジェクト (null の場合があります)RestClientExceptionHttpEntity@Nullable public <T> T patchForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... 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(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> 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(URISE url, @Nullable ObjectSE request, ClassSE<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(StringSE url, ObjectSE... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の delete url - URLuriVariables - テンプレートで展開する変数 RestClientExceptionpublic void delete(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の delete url - URLuriVariables - テンプレートを展開する変数 RestClientExceptionpublic void delete(URISE url) throws RestClientException
RestOperationsRestOperations 内の delete url - URLRestClientExceptionpublic SetSE<HttpMethod> optionsForAllow(StringSE url, ObjectSE... uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の optionsForAllow url - URLuriVariables - テンプレートで展開する変数 RestClientExceptionpublic SetSE<HttpMethod> optionsForAllow(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsURI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations 内の optionsForAllow url - URLuriVariables - テンプレートで展開する変数 RestClientExceptionpublic SetSE<HttpMethod> optionsForAllow(URISE url) throws RestClientException
RestOperationsRestOperations 内の optionsForAllow url - URLRestClientExceptionpublic <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文)は null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(URISE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType) throws RestClientException
RestOperationsResponseEntity として返します。RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 RestClientExceptionpublic <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。指定された ParameterizedTypeReference は、一般的な型情報を渡すために使用されます。
ParameterizedTypeReference<List<MyBean>> myBean =
new ParameterizedTypeReference<List<MyBean>>() {};
ResponseEntity<List<MyBean>> response =
template.exchange("https://example.com",HttpMethod.GET, null, myBean);
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperationsResponseEntity として返します。指定された ParameterizedTypeReference は、一般的な型情報を渡すために使用されます。
ParameterizedTypeReference<List<MyBean>> myBean =
new ParameterizedTypeReference<List<MyBean>>() {};
ResponseEntity<List<MyBean>> response =
template.exchange("https://example.com",HttpMethod.GET, null, myBean);
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 uriVariables - テンプレートで展開する変数 RestClientExceptionpublic <T> ResponseEntity<T> exchange(URISE 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("https://example.com",HttpMethod.GET, null, myBean);
RestOperations 内の exchange url - URLmethod - HTTP メソッド (GET、POST など)requestEntity - リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null の場合があります)responseType - 戻り値の型 RestClientExceptionpublic <T> ResponseEntity<T> exchange(RequestEntity<?> requestEntity, ClassSE<T> responseType) throws RestClientException
RestOperationsRequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。通常、たとえば RequestEntity の静的ビルダーメソッドと組み合わせて使用されます。
MyRequest body = ...
RequestEntity request = RequestEntity
.post(new URI("https://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("https://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(StringSE url, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor, ObjectSE... 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(StringSE url, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor, MapSE<StringSE,?> 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(URISE 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(URISE 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(URISE url, HttpMethod method, ClientHttpResponse response) throws IOExceptionSE
ResponseErrorHandler を呼び出します。サブクラスでオーバーライドできます。
url - 接続する完全に展開された URLmethod - 実行する HTTP メソッド (GET、POST など)response - 結果の ClientHttpResponseIOExceptionSE - ResponseErrorHandler から伝播された場合 setErrorHandler(org.springframework.web.client.ResponseErrorHandler)public <T> RequestCallback acceptHeaderRequestCallback(ClassSE<T> responseType)
Accept ヘッダーを設定する RequestCallback を返し、構成されたメッセージコンバーターと照合します。public <T> RequestCallback httpEntityCallback(@Nullable ObjectSE requestBody)
RequestCallback 実装を返します。public <T> RequestCallback httpEntityCallback(@Nullable ObjectSE requestBody, TypeSE responseType)
RequestCallback 実装を返します。Accept ヘッダーを設定します。public <T> ResponseExtractor<ResponseEntity<T>> responseEntityExtractor(TypeSE responseType)
ResponseEntity を準備する ResponseExtractor を返します。protected ResponseExtractor<HttpHeaders> headersExtractor()
HttpHeaders のレスポンス抽出プログラムを返します。