Interface WebClient.RequestBodySpec
- All Superinterfaces:
 WebClient.RequestHeadersSpec<WebClient.RequestBodySpec>
- All Known Subinterfaces:
 WebClient.RequestBodyUriSpec
- Enclosing interface:
 - WebClient
 
public static interface WebClient.RequestBodySpec
extends WebClient.RequestHeadersSpec<WebClient.RequestBodySpec>
Contract for specifying request headers and body leading up to the exchange.
- 
Method Summary
Modifier and TypeMethodDescriptionVariant ofbody(Publisher, Class)that allows using any producer that can be resolved toPublisherviaReactiveAdapterRegistry.body(Object producer, ParameterizedTypeReference<?> elementTypeRef) Variant ofbody(Publisher, ParameterizedTypeReference)that allows using any producer that can be resolved toPublisherviaReactiveAdapterRegistry.body(BodyInserter<?, ? super ClientHttpRequest> inserter) Set the body of the request using the given body inserter.<T,P extends Publisher<T>> 
WebClient.RequestHeadersSpec<?>Shortcut forbody(BodyInserter)with a Publisher inserter.<T,P extends Publisher<T>> 
WebClient.RequestHeadersSpec<?>body(P publisher, ParameterizedTypeReference<T> elementTypeRef) Variant ofbody(Publisher, Class)that allows providing element type information with generics.Shortcut forbody(BodyInserter)with a value inserter.contentLength(long contentLength) Set the length of the body in bytes, as specified by theContent-Lengthheader.contentType(MediaType contentType) Set the media type of the body, as specified by theContent-Typeheader.Deprecated.Methods inherited from interface org.springframework.web.reactive.function.client.WebClient.RequestHeadersSpec
accept, acceptCharset, attribute, attributes, context, cookie, cookies, exchange, exchangeToFlux, exchangeToMono, header, headers, httpRequest, ifModifiedSince, ifNoneMatch, retrieve 
- 
Method Details
- 
contentLength
Set the length of the body in bytes, as specified by theContent-Lengthheader.- Parameters:
 contentLength- the content length- Returns:
 - this builder
 - See Also:
 
 - 
contentType
Set the media type of the body, as specified by theContent-Typeheader.- Parameters:
 contentType- the content type- Returns:
 - this builder
 - See Also:
 
 - 
bodyValue
Shortcut forbody(BodyInserter)with a value inserter. For example:Person person = ... ; Mono<Void> result = client.post() .uri("/persons/{id}", id) .contentType(MediaType.APPLICATION_JSON) .bodyValue(person) .retrieve() .bodyToMono(Void.class);For multipart requests consider providing
MultiValueMapprepared withMultipartBodyBuilder.- Parameters:
 body- the value to write to the request body- Returns:
 - this builder
 - Throws:
 IllegalArgumentException- ifbodyis aPublisheror producer known toReactiveAdapterRegistry- Since:
 - 5.2
 
 - 
body
<T,P extends Publisher<T>> WebClient.RequestHeadersSpec<?> body(P publisher, Class<T> elementClass) Shortcut forbody(BodyInserter)with a Publisher inserter. For example:Mono<Person> personMono = ... ; Mono<Void> result = client.post() .uri("/persons/{id}", id) .contentType(MediaType.APPLICATION_JSON) .body(personMono, Person.class) .retrieve() .bodyToMono(Void.class);- Type Parameters:
 T- the type of the elements contained in the publisherP- the type of thePublisher- Parameters:
 publisher- thePublisherto write to the requestelementClass- the type of elements published- Returns:
 - this builder
 
 - 
body
<T,P extends Publisher<T>> WebClient.RequestHeadersSpec<?> body(P publisher, ParameterizedTypeReference<T> elementTypeRef) Variant ofbody(Publisher, Class)that allows providing element type information with generics.- Type Parameters:
 T- the type of the elements contained in the publisherP- the type of thePublisher- Parameters:
 publisher- thePublisherto write to the requestelementTypeRef- the type of elements published- Returns:
 - this builder
 
 - 
body
Variant ofbody(Publisher, Class)that allows using any producer that can be resolved toPublisherviaReactiveAdapterRegistry.- Parameters:
 producer- the producer to write to the requestelementClass- the type of elements produced- Returns:
 - this builder
 - Since:
 - 5.2
 
 - 
body
Variant ofbody(Publisher, ParameterizedTypeReference)that allows using any producer that can be resolved toPublisherviaReactiveAdapterRegistry.- Parameters:
 producer- the producer to write to the requestelementTypeRef- the type of elements produced- Returns:
 - this builder
 - Since:
 - 5.2
 
 - 
body
Set the body of the request using the given body inserter. SeeBodyInsertersfor built-inBodyInserterimplementations.- Parameters:
 inserter- the body inserter to use for the request body- Returns:
 - this builder
 - See Also:
 
 - 
syncBody
Deprecated.as of Spring Framework 5.2 in favor ofbodyValue(Object)Shortcut forbody(BodyInserter)with a value inserter. As of 5.2 this method delegates tobodyValue(Object). 
 - 
 
bodyValue(Object)