Struct gapi_grpc::google::rpc::context::attribute_context::Request[][src]

pub struct Request {
    pub id: String,
    pub method: String,
    pub headers: HashMap<String, String>,
    pub path: String,
    pub host: String,
    pub scheme: String,
    pub query: String,
    pub time: Option<Timestamp>,
    pub size: i64,
    pub protocol: String,
    pub reason: String,
    pub auth: Option<Auth>,
}

This message defines attributes for an HTTP request. If the actual request is not an HTTP request, the runtime system should try to map the actual request to an equivalent HTTP request.

Fields

id: String

The unique ID for a request, which can be propagated to downstream systems. The ID should have low probability of collision within a single day for a specific service.

method: String

The HTTP request method, such as GET, POST.

headers: HashMap<String, String>

The HTTP request headers. If multiple headers share the same key, they must be merged according to the HTTP spec. All header keys must be lowercased, because HTTP header keys are case-insensitive.

path: String

The HTTP URL path.

host: String

The HTTP request Host header value.

scheme: String

The HTTP URL scheme, such as http and https.

query: String

The HTTP URL query in the format of name1=value1&name2=value2, as it appears in the first line of the HTTP request. No decoding is performed.

time: Option<Timestamp>

The timestamp when the destination service receives the last byte of the request.

size: i64

The HTTP request size in bytes. If unknown, it must be -1.

protocol: String

The network protocol used with the request, such as “http/1.1”, “spdy/3”, “h2”, “h2c”, “webrtc”, “tcp”, “udp”, “quic”. See https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids for details.

reason: String

A special parameter for request reason. It is used by security systems to associate auditing information with a request.

auth: Option<Auth>

The request authentication. May be absent for unauthenticated requests. Derived from the HTTP request Authorization header or equivalent.

Trait Implementations

impl Clone for Request[src]

impl Debug for Request[src]

impl Default for Request[src]

impl Message for Request[src]

impl PartialEq<Request> for Request[src]

impl StructuralPartialEq for Request[src]

Auto Trait Implementations

impl RefUnwindSafe for Request

impl Send for Request

impl Sync for Request

impl Unpin for Request

impl UnwindSafe for Request

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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]

impl<T> IntoRequest<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]

impl<T> WithSubscriber for T[src]