[−][src]Struct ntex::http::client::ClientRequest
An HTTP Client request builder
This type can be used to construct an instance of ClientRequest
through a
builder-like pattern.
use ntex::http::client::Client; #[ntex::main] async fn main() { let response = Client::new() .get("http://www.rust-lang.org") // <- Create request builder .header("User-Agent", "ntex::web") .send() // <- Send http request .await; response.and_then(|response| { // <- server http response println!("Response: {:?}", response); Ok(()) }); }
Implementations
impl ClientRequest
[src]
pub fn uri<U>(mut self: Self, uri: U) -> Self where
Uri: TryFrom<U>,
<Uri as TryFrom<U>>::Error: Into<HttpError>,
[src]
Uri: TryFrom<U>,
<Uri as TryFrom<U>>::Error: Into<HttpError>,
Set HTTP URI of request.
pub fn get_uri(&self) -> &Uri
[src]
Get HTTP URI of request.
pub fn address(mut self: Self, addr: SocketAddr) -> Self
[src]
Set socket address of the server.
This address is used for connection. If address is not provided url's host name get resolved.
pub fn method(mut self: Self, method: Method) -> Self
[src]
Set HTTP method of this request.
pub fn get_method(&self) -> &Method
[src]
Get HTTP method of this request
pub fn get_version(&self) -> &Version
[src]
Get HTTP version of this request.
pub fn headers(&self) -> &HeaderMap
[src]
Returns request's headers.
pub fn headers_mut(&mut self) -> &mut HeaderMap
[src]
Returns request's mutable headers.
pub fn header<K, V>(mut self: Self, key: K, value: V) -> Self where
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
[src]
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
Append a header.
Header gets appended to existing header.
To override header use set_header()
method.
use ntex::http; use ntex::http::client::Client; #[ntex::main] async fn main() { let req = Client::new() .get("http://www.rust-lang.org") .header("X-TEST", "value") .header(http::header::CONTENT_TYPE, "application/json"); }
pub fn set_header<K, V>(mut self: Self, key: K, value: V) -> Self where
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
[src]
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
Insert a header, replaces existing header.
pub fn set_header_if_none<K, V>(mut self: Self, key: K, value: V) -> Self where
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
[src]
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
Insert a header only if it is not yet set.
pub fn force_close(mut self: Self) -> Self
[src]
Force close connection instead of returning it back to connections pool. This setting affect only http/1 connections.
pub fn content_type<V>(mut self: Self, value: V) -> Self where
HeaderValue: TryFrom<V>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
[src]
HeaderValue: TryFrom<V>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
Set request's content type
pub fn content_length(self, len: u64) -> Self
[src]
Set content length
pub fn basic_auth<U>(self, username: U, password: Option<&str>) -> Self where
U: Display,
[src]
U: Display,
Set HTTP basic authorization header
pub fn bearer_auth<T>(self, token: T) -> Self where
T: Display,
[src]
T: Display,
Set HTTP bearer authentication header
pub fn cookie(mut self: Self, cookie: Cookie<'_>) -> Self
[src]
Set a cookie
use coo_kie as cookie; use ntex::http::client::Client; #[ntex::main] async fn main() { let resp = Client::new().get("https://www.rust-lang.org") .cookie( cookie::Cookie::build("name", "value") .domain("www.rust-lang.org") .path("/") .secure(true) .http_only(true) .finish(), ) .send() .await; println!("Response: {:?}", resp); }
pub fn no_decompress(mut self: Self) -> Self
[src]
Disable automatic decompress of response's body
pub fn timeout(mut self: Self, timeout: Duration) -> Self
[src]
Set request timeout. Overrides client wide timeout setting.
Request timeout is the total time before a response must be received. Default value is 5 seconds.
pub fn if_true<F>(self, value: bool, f: F) -> Self where
F: FnOnce(ClientRequest) -> ClientRequest,
[src]
F: FnOnce(ClientRequest) -> ClientRequest,
This method calls provided closure with builder reference if
value is true
.
pub fn if_some<T, F>(self, value: Option<T>, f: F) -> Self where
F: FnOnce(T, ClientRequest) -> ClientRequest,
[src]
F: FnOnce(T, ClientRequest) -> ClientRequest,
This method calls provided closure with builder reference if
value is Some
.
pub fn query<T: Serialize>(mut self: Self, query: &T) -> Result<Self, Error>
[src]
Sets the query part of the request
pub fn freeze(self) -> Result<FrozenClientRequest, FreezeRequestError>
[src]
Freeze request builder and construct FrozenClientRequest
,
which could be used for sending same request multiple times.
pub fn send_body<B>(self, body: B) -> SendClientRequestⓘNotable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
where
B: Into<Body>,
[src]
Notable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
B: Into<Body>,
Complete request construction and send body.
pub fn send_json<T: Serialize>(self, value: &T) -> SendClientRequestⓘNotable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
[src]
Notable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
Set a JSON body and generate ClientRequest
pub fn send_form<T: Serialize>(self, value: &T) -> SendClientRequestⓘNotable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
[src]
Notable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
Set a urlencoded body and generate ClientRequest
ClientRequestBuilder
can not be used after this call.
pub fn send_stream<S, E>(self, stream: S) -> SendClientRequestⓘNotable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
where
S: Stream<Item = Result<Bytes, E>> + Unpin + 'static,
E: Error + 'static,
[src]
Notable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
S: Stream<Item = Result<Bytes, E>> + Unpin + 'static,
E: Error + 'static,
Set an streaming body and generate ClientRequest
.
pub fn send(self) -> SendClientRequestⓘNotable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
[src]
Notable traits for SendClientRequest
impl Future for SendClientRequest type Output = Result<ClientResponse<Decoder<Payload<PayloadStream>>>, SendRequestError>;
Set an empty body and generate ClientRequest
.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for ClientRequest
[src]
impl !Send for ClientRequest
[src]
impl !Sync for ClientRequest
[src]
impl Unpin for ClientRequest
[src]
impl !UnwindSafe for ClientRequest
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,