pub trait ApiHttpClient:
Send
+ Sync
+ 'static {
// Required methods
fn send_request<ResponseT: Send + DeserializeOwned>(
&self,
uri: String,
method: Method,
) -> impl Future<Output = Result<ResponseT, Report<ApiClientError>>> + Send;
fn send_request_with_params<ResponseT: DeserializeOwned + Send, ParamsT: Iterator<Item = (String, String)> + Send>(
&self,
uri: String,
params: ParamsT,
method: Method,
) -> impl Future<Output = Result<ResponseT, Report<ApiClientError>>> + Send;
fn send_request_body<RequestT: Serialize + Send, ResponseT: DeserializeOwned + Send>(
&self,
uri: String,
method: Method,
request_body: RequestT,
) -> impl Future<Output = Result<ResponseT, Report<ApiClientError>>> + Send;
fn send_request_body_get_bytes<RequestT: Serialize + Send>(
&self,
uri: String,
method: Method,
request_body: RequestT,
) -> impl Future<Output = Result<Bytes, Report<ApiClientError>>> + Send;
fn send_request_body_empty_response<RequestT: Serialize + Send>(
&self,
uri: String,
method: Method,
request_body: RequestT,
) -> impl Future<Output = Result<(), Report<ApiClientError>>> + Send;
}Required Methods§
fn send_request<ResponseT: Send + DeserializeOwned>( &self, uri: String, method: Method, ) -> impl Future<Output = Result<ResponseT, Report<ApiClientError>>> + Send
fn send_request_with_params<ResponseT: DeserializeOwned + Send, ParamsT: Iterator<Item = (String, String)> + Send>( &self, uri: String, params: ParamsT, method: Method, ) -> impl Future<Output = Result<ResponseT, Report<ApiClientError>>> + Send
fn send_request_body<RequestT: Serialize + Send, ResponseT: DeserializeOwned + Send>( &self, uri: String, method: Method, request_body: RequestT, ) -> impl Future<Output = Result<ResponseT, Report<ApiClientError>>> + Send
fn send_request_body_get_bytes<RequestT: Serialize + Send>( &self, uri: String, method: Method, request_body: RequestT, ) -> impl Future<Output = Result<Bytes, Report<ApiClientError>>> + Send
fn send_request_body_empty_response<RequestT: Serialize + Send>( &self, uri: String, method: Method, request_body: RequestT, ) -> impl Future<Output = Result<(), Report<ApiClientError>>> + Send
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.