pub struct RpcConfiguration {Show 14 fields
pub addr: Option<Vec<RpcEndpoint>>,
pub max_connections: u32,
pub cors: Option<Vec<String>>,
pub methods: RpcMethods,
pub max_request_size: u32,
pub max_response_size: u32,
pub id_provider: Option<Box<dyn RpcSubscriptionIdProvider>>,
pub max_subs_per_conn: u32,
pub port: u16,
pub message_buffer_capacity: u32,
pub batch_config: RpcBatchRequestConfig,
pub rate_limit: Option<NonZeroU32>,
pub rate_limit_whitelisted_ips: Vec<IpNetwork>,
pub rate_limit_trust_proxy_headers: bool,
}
Expand description
RPC configuration.
Fields§
§addr: Option<Vec<RpcEndpoint>>
JSON-RPC server endpoints.
max_connections: u32
Maximum number of connections for JSON-RPC server.
cors: Option<Vec<String>>
CORS settings for HTTP & WS servers. None
if all origins are allowed.
methods: RpcMethods
RPC methods to expose (by default only a safe subset or all of them).
max_request_size: u32
Maximum payload of a rpc request
max_response_size: u32
Maximum payload of a rpc response.
id_provider: Option<Box<dyn RpcSubscriptionIdProvider>>
Custom JSON-RPC subscription ID provider.
Default: crate::RandomStringSubscriptionId
.
max_subs_per_conn: u32
Maximum allowed subscriptions per rpc connection
port: u16
JSON-RPC server default port.
message_buffer_capacity: u32
The number of messages the JSON-RPC server is allowed to keep in memory.
batch_config: RpcBatchRequestConfig
JSON-RPC server batch config.
rate_limit: Option<NonZeroU32>
RPC rate limit per minute.
rate_limit_whitelisted_ips: Vec<IpNetwork>
RPC rate limit whitelisted ip addresses.
rate_limit_trust_proxy_headers: bool
RPC rate limit trust proxy headers.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RpcConfiguration
impl !RefUnwindSafe for RpcConfiguration
impl Send for RpcConfiguration
impl Sync for RpcConfiguration
impl Unpin for RpcConfiguration
impl !UnwindSafe for RpcConfiguration
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> CheckedConversion for T
impl<T> CheckedConversion for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 moreSource§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
Source§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
Source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
Source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read moreSource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
Source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.Source§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
Source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.