Struct hrpc::client::transport::http::wasm::Wasm [−][src]
pub struct Wasm { /* fields omitted */ }
Expand description
HTTP client that compiles to WASM and works on the Web.
This client will:
- (For unary requests) Look for a
http::HeaderMap
in a [Request
]s extensions, if it exists the headers in there will be added to the HTTP request that will be used. Headers added by the client by default will be overwrited, so take care while inserting headers that are mentioned in the spec. - Adds
http::StatusCode
, to theResponse
extension returned in unary requests. Also addsHRPC_VERSION_HEADER
andheader::CONTENT_TYPE
to ahttp::HeaderMap
in the response’s extensions. See limitations as for why all of the headers aren’t added. - (For streaming requests) Look for
SocketProtocols
in a [Request
]s extensions, if it exists it will be used to set the protocols of the WebSocket that will be created. This will overwrite the protocols added by this client.
Limitations
- This client does not support setting headers for streaming requests,
due to Web’s
WebSocket
API’s limitations. - This client does not add all of the headers of the response to the
HeaderMap
of the returnedResponse
’s extensions. This is due to https://github.com/rustwasm/wasm-bindgen/pull/1913 not being inwasm-bindgen
. - If inserting
HeaderMap
in [Request
] extensions to add headers, keep in mind that header values that are not valid strings won’t be added. SeeHeaderValue
’sto_str
method for information about a “valid string”.
Implementations
Trait Implementations
type Response = BoxResponse
type Response = BoxResponse
Responses given by the service.
type Error = TransportError<WasmError>
type Error = TransportError<WasmError>
Errors produced by the service.
type Future = CallFuture
type Future = CallFuture
The future response value.
Returns Poll::Ready(Ok(()))
when the service is able to process requests. Read more
Process the request and return the response asynchronously. Read more
Auto Trait Implementations
impl RefUnwindSafe for Wasm
impl UnwindSafe for Wasm
Blanket Implementations
Mutably borrows from an owned value. Read more
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
Yields a mutable reference to the service when it is ready to accept a request.
please use the ServiceExt::ready
method instead
Yields a mutable reference to the service when it is ready to accept a request.
fn ready_oneshot(self) -> ReadyOneshot<Self, Request>ⓘNotable traits for ReadyOneshot<T, Request>impl<T, Request> Future for ReadyOneshot<T, Request> where
T: Service<Request>, type Output = Result<T, <T as Service<Request>>::Error>;
fn ready_oneshot(self) -> ReadyOneshot<Self, Request>ⓘNotable traits for ReadyOneshot<T, Request>impl<T, Request> Future for ReadyOneshot<T, Request> where
T: Service<Request>, type Output = Result<T, <T as Service<Request>>::Error>;
impl<T, Request> Future for ReadyOneshot<T, Request> where
T: Service<Request>, type Output = Result<T, <T as Service<Request>>::Error>;
Yields the service when it is ready to accept a request.
Consume this Service
, calling with the providing request once it is ready.
Executes a new future after this service’s future resolves. This does
not alter the behaviour of the poll_ready
method. Read more
fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F> where
F: FnOnce(Self::Response) -> Response + Clone,
fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F> where
F: FnOnce(Self::Response) -> Response + Clone,
Maps this service’s response value to a different value. This does not
alter the behaviour of the poll_ready
method. Read more
Maps this service’s error value to a different value. This does not
alter the behaviour of the poll_ready
method. Read more
Maps this service’s result type (Result<Self::Response, Self::Error>
)
to a different value, regardless of whether the future succeeds or
fails. Read more
fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F> where
F: FnMut(NewRequest) -> Request,
fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F> where
F: FnMut(NewRequest) -> Request,
Composes a function in front of the service. Read more
Composes an asynchronous function after this service. Read more
Composes a function that transforms futures produced by the service. Read more
pub fn vzip(self) -> V
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more