Struct salvo::hyper::Client [−]
pub struct Client<C, B = Body> { /* fields omitted */ }
Expand description
A Client to make outgoing HTTP requests.
Implementations
impl Client<HttpConnector<GaiResolver>, Body>
impl Client<HttpConnector<GaiResolver>, Body>
pub fn new() -> Client<HttpConnector<GaiResolver>, Body>
pub fn new() -> Client<HttpConnector<GaiResolver>, Body>
Create a new Client with the default config.
Note
The default connector does not handle TLS. Speaking to https
destinations will require configuring a connector that implements
TLS.
impl<C, B> Client<C, B> where
C: Connect + Clone + Send + Sync + 'static,
B: Body + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
impl<C, B> Client<C, B> where
C: Connect + Clone + Send + Sync + 'static,
B: Body + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
pub fn get(&self, uri: Uri) -> ResponseFutureⓘNotable traits for ResponseFuture
impl Future for ResponseFuture type Output = Result<Response<Body>, Error>;
where
B: Default,
pub fn get(&self, uri: Uri) -> ResponseFutureⓘNotable traits for ResponseFuture
impl Future for ResponseFuture type Output = Result<Response<Body>, Error>;
where
B: Default,
Send a GET
request to the supplied Uri
.
Note
This requires that the HttpBody
type have a Default
implementation.
It should return an “empty” version of itself, such that
HttpBody::is_end_stream
is true
.
Example
use hyper::{Client, Uri}; let client = Client::new(); let future = client.get(Uri::from_static("http://httpbin.org/ip"));
pub fn request(&self, req: Request<B>) -> ResponseFutureⓘNotable traits for ResponseFuture
impl Future for ResponseFuture type Output = Result<Response<Body>, Error>;
pub fn request(&self, req: Request<B>) -> ResponseFutureⓘNotable traits for ResponseFuture
impl Future for ResponseFuture type Output = Result<Response<Body>, Error>;
Send a constructed Request
using this Client
.
Example
use hyper::{Body, Method, Client, Request}; let client = Client::new(); let req = Request::builder() .method(Method::POST) .uri("http://httpbin.org/post") .body(Body::from("Hallo!")) .expect("request builder"); let future = client.request(req);
Trait Implementations
impl Default for Client<HttpConnector<GaiResolver>, Body>
impl Default for Client<HttpConnector<GaiResolver>, Body>
pub fn default() -> Client<HttpConnector<GaiResolver>, Body>
pub fn default() -> Client<HttpConnector<GaiResolver>, Body>
Returns the “default value” for a type. Read more
impl<'_, C, B> Service<Request<B>> for &'_ Client<C, B> where
C: Connect + Clone + Send + Sync + 'static,
B: Body + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
impl<'_, C, B> Service<Request<B>> for &'_ Client<C, B> where
C: Connect + Clone + Send + Sync + 'static,
B: Body + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
impl<C, B> Service<Request<B>> for Client<C, B> where
C: Connect + Clone + Send + Sync + 'static,
B: Body + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
impl<C, B> Service<Request<B>> for Client<C, B> where
C: Connect + Clone + Send + Sync + 'static,
B: Body + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
Auto Trait Implementations
impl<C, B = Body> !RefUnwindSafe for Client<C, B>
impl<C, B> Send for Client<C, B> where
B: Send,
C: Send,
B: Send,
C: Send,
impl<C, B> Sync for Client<C, B> where
B: Send,
C: Sync,
B: Send,
C: Sync,
impl<C, B> Unpin for Client<C, B> where
C: Unpin,
C: Unpin,
impl<C, B = Body> !UnwindSafe for Client<C, B>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,