public class RestTemplate extends InterceptingHttpAccessor implements RestOperations
HttpURLConnection
、Apache HttpComponents などの基盤となる HTTP クライアントライブラリを介してシンプルなテンプレートメソッド API を公開します。RestTemplate は、頻度の低いケースをサポートする一般化された exchange
および execute
メソッドに加えて、HTTP メソッドによる一般的なシナリオのテンプレートを提供します。
注意 : 5.0 では、このクラスはメンテナンスモードになっており、今後は変更やバグを受け入れるためのマイナーなリクエストのみが行われます。最新の API を備え、同期、非同期、ストリーミングのシナリオをサポートする org.springframework.web.reactive.client.WebClient
の使用を検討してください。
HttpMessageConverter
, RequestCallback
, ResponseExtractor
, ResponseErrorHandler
logger
コンストラクターと説明 |
---|
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<?> entity, ClassSE<T> responseType) 指定された RequestEntity で指定されたリクエストを実行し、レスポンスを ResponseEntity として返します。 |
<T> ResponseEntity<T> | exchange(RequestEntity<?> entity, 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, setRequestFactory
createRequest, getClientHttpRequestInitializers, setClientHttpRequestInitializers
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public RestTemplate()
RestTemplate
の新しいインスタンスを作成します。デフォルトの HttpMessageConverters
が初期化されます。public RestTemplate(ClientHttpRequestFactory requestFactory)
ClientHttpRequestFactory
に基づいて、RestTemplate
の新しいインスタンスを作成します。requestFactory
- 使用する HTTP リクエストファクトリ SimpleClientHttpRequestFactory
, HttpComponentsClientHttpRequestFactory
public RestTemplate(ListSE<HttpMessageConverter<?>> messageConverters)
HttpMessageConverter
の指定されたリストを使用して、RestTemplate
の新しいインスタンスを作成します。messageConverters
- 使用する HttpMessageConverter
のリスト public void setMessageConverters(ListSE<HttpMessageConverter<?>> messageConverters)
これらのコンバーターは、HTTP リクエストとレスポンスの変換に使用されます。
public ListSE<HttpMessageConverter<?>> getMessageConverters()
返された List
SE はアクティブであり、追加される場合があります。
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
RestOperations
URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations
の getForObject
url
- URLresponseType
- 戻り値の型 uriVariables
- テンプレートを展開する変数 RestClientException
@Nullable public <T> T getForObject(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations
の getForObject
url
- URLresponseType
- 戻り値の型 uriVariables
- URI テンプレートの変数を含むマップ RestClientException
@Nullable public <T> T getForObject(URISE url, ClassSE<T> responseType) throws RestClientException
RestOperations
RestOperations
の getForObject
url
- URLresponseType
- 戻り値の型 RestClientException
public <T> ResponseEntity<T> getForEntity(StringSE url, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperations
ResponseEntity
に保存されます。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations
の getForEntity
url
- URLresponseType
- 戻り値の型 uriVariables
- テンプレートを展開する変数 RestClientException
public <T> ResponseEntity<T> getForEntity(StringSE url, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
ResponseEntity
に保存されます。URI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations
の getForEntity
url
- URLresponseType
- 戻り値の型 uriVariables
- URI テンプレートの変数を含むマップ RestClientException
public <T> ResponseEntity<T> getForEntity(URISE url, ClassSE<T> responseType) throws RestClientException
RestOperations
ResponseEntity
に保存されます。RestOperations
の getForEntity
url
- URLresponseType
- 戻り値の型 RestClientException
public HttpHeaders headForHeaders(StringSE url, ObjectSE... uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations
の headForHeaders
url
- URLuriVariables
- テンプレートを展開する変数 RestClientException
public HttpHeaders headForHeaders(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations
の headForHeaders
url
- URLuriVariables
- URI テンプレートの変数を含むマップ RestClientException
public HttpHeaders headForHeaders(URISE url) throws RestClientException
RestOperations
RestOperations
の headForHeaders
url
- URLRestClientException
@Nullable public URISE postForLocation(StringSE url, @Nullable ObjectSE request, ObjectSE... uriVariables) throws RestClientException
RestOperations
Location
ヘッダーの値を返します。このヘッダーは通常、新しいリソースが保存されている場所を示します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForLocation
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)uriVariables
- テンプレートを展開する変数 Location
ヘッダーの値 RestClientException
HttpEntity
@Nullable public URISE postForLocation(StringSE url, @Nullable ObjectSE request, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
Location
ヘッダーの値を返します。このヘッダーは通常、新しいリソースが保存されている場所を示します。URI テンプレート変数は、指定されたマップを使用して展開されます。
request
パラメーターは、追加の HTTP ヘッダーをリクエストに追加するために HttpEntity
にすることができます
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForLocation
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)uriVariables
- テンプレートを展開する変数 Location
ヘッダーの値 RestClientException
HttpEntity
@Nullable public URISE postForLocation(URISE url, @Nullable ObjectSE request) throws RestClientException
RestOperations
Location
ヘッダーの値を返します。このヘッダーは通常、新しいリソースが保存されている場所を示します。 リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForLocation
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)Location
ヘッダーの値 RestClientException
HttpEntity
@Nullable public <T> T postForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForObject
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)responseType
- 戻り値の型 uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
@Nullable public <T> T postForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForObject
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)responseType
- 戻り値の型 uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
@Nullable public <T> T postForObject(URISE url, @Nullable ObjectSE request, ClassSE<T> responseType) throws RestClientException
RestOperations
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForObject
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)responseType
- 戻り値の型 RestClientException
HttpEntity
public <T> ResponseEntity<T> postForEntity(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperations
ResponseEntity
として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForEntity
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
public <T> ResponseEntity<T> postForEntity(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
HttpEntity
として返します。URI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForEntity
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
public <T> ResponseEntity<T> postForEntity(URISE url, @Nullable ObjectSE request, ClassSE<T> responseType) throws RestClientException
RestOperations
ResponseEntity
として返します。 リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
エンティティの本体、または request
自体は、マルチパートリクエストを作成するために MultiValueMap
にすることができます。MultiValueMap
の値は、パーツのボディを表す任意のオブジェクト、またはボディとヘッダーを持つパーツを表す HttpEntity
のいずれかです。
RestOperations
の postForEntity
url
- URLrequest
- POST されるオブジェクト (null
の場合があります)RestClientException
HttpEntity
public void put(StringSE url, @Nullable ObjectSE request, ObjectSE... uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
RestOperations
の put
url
- URLrequest
- PUT されるオブジェクト (null
の場合があります)uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
public void put(StringSE url, @Nullable ObjectSE request, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
RestOperations
の put
url
- URLrequest
- PUT されるオブジェクト (null
の場合があります)uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
public void put(URISE url, @Nullable ObjectSE request) throws RestClientException
RestOperations
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
RestOperations
の put
url
- URLrequest
- PUT されるオブジェクト (null
の場合があります)RestClientException
HttpEntity
@Nullable public <T> T patchForObject(StringSE url, @Nullable ObjectSE request, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。Apache HttpComponents または OkHttp リクエストファクトリを使用する必要があります。
RestOperations
の patchForObject
url
- URLrequest
- パッチされるオブジェクト (null
の場合があります)responseType
- 戻り値の型 uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
, 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
RestOperations
URI テンプレート変数は、指定されたマップを使用して展開されます。
リクエストに追加の HTTP ヘッダーを追加するには、request
パラメーターを HttpEntity
にすることができます。
NOTE: 標準の JDK HTTP ライブラリは HTTP PATCH をサポートしていません。Apache HttpComponents または OkHttp リクエストファクトリを使用する必要があります。
RestOperations
の patchForObject
url
- URLrequest
- パッチされるオブジェクト (null
の場合があります)responseType
- 戻り値の型 uriVariables
- テンプレートを展開する変数 RestClientException
HttpEntity
, 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
- 戻り値の型 RestClientException
HttpEntity
, InterceptingHttpAccessor.setRequestFactory(org.springframework.http.client.ClientHttpRequestFactory)
, HttpComponentsAsyncClientHttpRequestFactory
, OkHttp3ClientHttpRequestFactory
public void delete(StringSE url, ObjectSE... uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations
の delete
url
- URLuriVariables
- テンプレートで展開する変数 RestClientException
public void delete(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations
の delete
url
- URLuriVariables
- テンプレートを展開する変数 RestClientException
public void delete(URISE url) throws RestClientException
RestOperations
RestOperations
の delete
url
- URLRestClientException
public SetSE<HttpMethod> optionsForAllow(StringSE url, ObjectSE... uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations
の optionsForAllow
url
- URLuriVariables
- テンプレートで展開する変数 RestClientException
public SetSE<HttpMethod> optionsForAllow(StringSE url, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
URI テンプレート変数は、指定されたマップを使用して展開されます。
RestOperations
の optionsForAllow
url
- URLuriVariables
- テンプレートで展開する変数 RestClientException
public SetSE<HttpMethod> optionsForAllow(URISE url) throws RestClientException
RestOperations
RestOperations
の optionsForAllow
url
- URLRestClientException
public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperations
ResponseEntity
として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations
の exchange
url
- URLmethod
- HTTP メソッド (GET、POST など)requestEntity
- リクエストに書き込むエンティティ(ヘッダーおよび / または本文)は null
の場合があります)responseType
- レスポンスを変換する型、または本体なしの場合は Void.class
uriVariables
- テンプレートで展開する変数 RestClientException
public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
ResponseEntity
として返します。URI テンプレート変数は、指定された URI 変数があればそれを使用して展開されます。
RestOperations
の exchange
url
- URLmethod
- HTTP メソッド (GET、POST など)requestEntity
- リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null
の場合があります)responseType
- レスポンスを変換する型、または本体なしの場合は Void.class
uriVariables
- テンプレートで展開する変数 RestClientException
public <T> ResponseEntity<T> exchange(URISE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ClassSE<T> responseType) throws RestClientException
RestOperations
ResponseEntity
として返します。RestOperations
の exchange
url
- URLmethod
- HTTP メソッド (GET、POST など)requestEntity
- リクエストに書き込むエンティティ(ヘッダーおよび / または本文) (null
の場合があります)responseType
- レスポンスを変換する型、または本体なしの場合は Void.class
RestClientException
public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, ObjectSE... uriVariables) throws RestClientException
RestOperations
ResponseEntity
として返します。指定された 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
- レスポンスを変換する型、または本体なしの場合は Void.class
uriVariables
- テンプレートで展開する変数 RestClientException
public <T> ResponseEntity<T> exchange(StringSE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, MapSE<StringSE,?> uriVariables) throws RestClientException
RestOperations
ResponseEntity
として返します。指定された 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
- レスポンスを変換する型、または本体なしの場合は Void.class
uriVariables
- テンプレートで展開する変数 RestClientException
public <T> ResponseEntity<T> exchange(URISE url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) throws RestClientException
RestOperations
ResponseEntity
として返します。指定された 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
- レスポンスを変換する型、または本体なしの場合は Void.class
RestClientException
public <T> ResponseEntity<T> exchange(RequestEntity<?> entity, ClassSE<T> responseType) throws RestClientException
RestOperations
RequestEntity
で指定されたリクエストを実行し、レスポンスを 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
entity
- リクエストに書き込むエンティティ responseType
- レスポンスを変換する型、または本体なしの場合は Void.class
RestClientException
public <T> ResponseEntity<T> exchange(RequestEntity<?> entity, ParameterizedTypeReference<T> responseType) throws RestClientException
RestOperations
RequestEntity
で指定されたリクエストを実行し、レスポンスを 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
entity
- リクエストに書き込むエンティティ responseType
- レスポンスを変換する型、または本体なしの場合は Void.class
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
によって返される任意のオブジェクト RestClientException
protected void handleResponse(URISE url, HttpMethod method, ClientHttpResponse response) throws IOExceptionSE
ResponseErrorHandler
を呼び出します。サブクラスでオーバーライドできます。
url
- 接続する完全に展開された URLmethod
- 実行する HTTP メソッド (GET、POST など)response
- 結果の ClientHttpResponse
IOExceptionSE
- 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
のレスポンス抽出プログラムを返します。