Struct tonic::Request [−][src]
A gRPC request and metadata from an RPC call.
Implementations
impl<T> Request<T>
[src][−]
pub fn new(message: T) -> Self
[src][−]
Create a new gRPC request.
Request::new(HelloRequest { name: "Bob".into(), });
pub fn get_ref(&self) -> &Tⓘ
[src][−]
Get a reference to the message
pub fn get_mut(&mut self) -> &mut Tⓘ
[src][−]
Get a mutable reference to the message
pub fn metadata(&self) -> &MetadataMap
[src][−]
Get a reference to the custom request metadata.
pub fn metadata_mut(&mut self) -> &mut MetadataMap
[src][−]
Get a mutable reference to the request metadata.
pub fn into_inner(self) -> T
[src][−]
Consumes self
, returning the message
pub fn from_http(http: Request<T>) -> Self
[src][−]
Convert an HTTP request to a gRPC request
pub fn remote_addr(&self) -> Option<SocketAddr>
[src][−]
Get the remote address of this connection.
This will return None
if the IO
type used
does not implement Connected
. This currently,
only works on the server side.
pub fn peer_certs(&self) -> Option<Arc<Vec<Certificate>>>
[src][−]
Get the peer certificates of the connected client.
This is used to fetch the certificates from the TLS session
and is mostly used for mTLS. This currently only returns
Some
on the server side of the transport
server with
TLS enabled connections.
Trait Implementations
impl<T: Debug> Debug for Request<T>
[src][+]
impl<T> IntoRequest<T> for Request<T>
[src][+]
impl<T> IntoStreamingRequest for Request<T> where
T: Stream + Send + Sync + 'static,
[src][+]
T: Stream + Send + Sync + 'static,
Auto Trait Implementations
impl<T> !RefUnwindSafe for Request<T>
impl<T> Send for Request<T> where
T: Send,
T: Send,
impl<T> Sync for Request<T> where
T: Sync,
T: Sync,
impl<T> Unpin for Request<T> where
T: Unpin,
T: Unpin,
impl<T> !UnwindSafe for Request<T>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T> Instrument for T
[src][+]
impl<T> Instrument for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> Pointable for T
[src][+]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src][+]
V: MultiLane<T>,