pub struct BinanceRawHttpClient { /* private fields */ }Expand description
Lightweight raw HTTP client for Binance REST API access.
Handles:
- Base URL and API path resolution by product type/environment.
- Optional HMAC SHA256 signing for private endpoints.
- Rate limiting using documented quotas per product type.
- Basic error deserialization for Binance error payloads.
Implementations§
Source§impl BinanceRawHttpClient
impl BinanceRawHttpClient
Sourcepub fn new(
product_type: BinanceProductType,
environment: BinanceEnvironment,
api_key: Option<String>,
api_secret: Option<String>,
base_url_override: Option<String>,
recv_window: Option<u64>,
timeout_secs: Option<u64>,
proxy_url: Option<String>,
) -> BinanceHttpResult<Self>
pub fn new( product_type: BinanceProductType, environment: BinanceEnvironment, api_key: Option<String>, api_secret: Option<String>, base_url_override: Option<String>, recv_window: Option<u64>, timeout_secs: Option<u64>, proxy_url: Option<String>, ) -> BinanceHttpResult<Self>
Creates a new Binance raw HTTP client.
§Errors
Returns an error if the underlying [HttpClient] fails to build.
Sourcepub async fn get<P, T>(
&self,
path: &str,
params: Option<&P>,
signed: bool,
use_order_quota: bool,
) -> BinanceHttpResult<T>
pub async fn get<P, T>( &self, path: &str, params: Option<&P>, signed: bool, use_order_quota: bool, ) -> BinanceHttpResult<T>
Performs a GET request and deserializes the response body.
When signed is true, timestamp/recvWindow are appended and the signature is added.
Sourcepub async fn post<P, T>(
&self,
path: &str,
params: Option<&P>,
body: Option<Vec<u8>>,
signed: bool,
use_order_quota: bool,
) -> BinanceHttpResult<T>
pub async fn post<P, T>( &self, path: &str, params: Option<&P>, body: Option<Vec<u8>>, signed: bool, use_order_quota: bool, ) -> BinanceHttpResult<T>
Performs a POST request with optional body and signed query.
Sourcepub async fn request_put<P, T>(
&self,
path: &str,
params: Option<&P>,
signed: bool,
use_order_quota: bool,
) -> BinanceHttpResult<T>
pub async fn request_put<P, T>( &self, path: &str, params: Option<&P>, signed: bool, use_order_quota: bool, ) -> BinanceHttpResult<T>
Performs a PUT request with signed query.
Sourcepub async fn request_delete<P, T>(
&self,
path: &str,
params: Option<&P>,
signed: bool,
use_order_quota: bool,
) -> BinanceHttpResult<T>
pub async fn request_delete<P, T>( &self, path: &str, params: Option<&P>, signed: bool, use_order_quota: bool, ) -> BinanceHttpResult<T>
Performs a DELETE request with signed query.
Trait Implementations§
Source§impl Clone for BinanceRawHttpClient
impl Clone for BinanceRawHttpClient
Source§fn clone(&self) -> BinanceRawHttpClient
fn clone(&self) -> BinanceRawHttpClient
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for BinanceRawHttpClient
impl !RefUnwindSafe for BinanceRawHttpClient
impl Send for BinanceRawHttpClient
impl Sync for BinanceRawHttpClient
impl Unpin for BinanceRawHttpClient
impl !UnwindSafe for BinanceRawHttpClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more