Struct rusoto_signature::signature::SignedRequest [−][src]
A data structure for all the elements of an HTTP request that are involved in the Amazon Signature Version 4 signing process
Fields
method: StringThe HTTP Method
service: StringThe AWS Service
region: RegionThe AWS Region
path: StringThe HTTP request path
headers: BTreeMap<String, Vec<Vec<u8>>>The HTTP Request Headers
params: ParamsThe HTTP request paramaters
scheme: Option<String>The HTTP/HTTPS protocol
hostname: Option<String>The AWS hostname
payload: Option<SignedRequestPayload>The HTTP Content
canonical_query_string: StringThe Standardised query string
canonical_uri: StringThe Standardised URI
Implementations
impl SignedRequest[src]
pub fn new(
method: &str,
service: &str,
region: &Region,
path: &str
) -> SignedRequest[src]
method: &str,
service: &str,
region: &Region,
path: &str
) -> SignedRequest
Default constructor
pub fn set_content_type(&mut self, content_type: String)[src]
Sets the value of the “content-type” header.
pub fn set_hostname(&mut self, hostname: Option<String>)[src]
Sets the target hostname
pub fn set_endpoint_prefix(&mut self, endpoint_prefix: String)[src]
Sets the target hostname using the current service type and region
See the implementation of build_hostname to see how this is done
pub fn set_payload<B: Into<Bytes>>(&mut self, payload: Option<B>)[src]
Sets the new body (payload)
pub fn set_payload_stream(&mut self, stream: ByteStream)[src]
Sets the new body (payload) as a stream
pub fn set_content_md5_header(&mut self)[src]
Computes and sets the Content-MD5 header based on the current payload.
Has no effect if the payload is not set, or is not a buffer.
pub fn method(&self) -> &str[src]
Returns the current HTTP method
pub fn path(&self) -> &str[src]
Returns the current path
pub fn canonical_path(&self) -> String[src]
Invokes canonical_uri(path) to return a canonical path
pub fn canonical_uri(&self) -> &str[src]
Returns the current canonical URI
pub fn canonical_query_string(&self) -> &str[src]
Returns the current query string
Converts a paramater such as “example param”: “examplekey” into “&example+param=examplekey”
pub fn headers(&self) -> &BTreeMap<String, Vec<Vec<u8>>>[src]
Returns the current headers
pub fn scheme(&self) -> String[src]
Returns the current http scheme (https or http)
pub fn region_for_service(&self) -> String[src]
Modify the region used for signing if needed, such as for AWS Organizations
pub fn hostname(&self) -> String[src]
Converts hostname to String if it exists, else it invokes build_hostname()
pub fn remove_header(&mut self, key: &str)[src]
If the key exists in headers, set it to blank/unoccupied:
pub fn add_header<K: ToString>(&mut self, key: K, value: &str)[src]
Add a value to the array of headers for the specified key. Headers are kept sorted by key name for use at signing (BTreeMap)
pub fn add_optional_header<K: ToString, V: ToString>(
&mut self,
key: K,
value: Option<V>
)[src]
&mut self,
key: K,
value: Option<V>
)
pub fn add_param<S>(&mut self, key: S, value: S) where
S: Into<String>, [src]
S: Into<String>,
Adds parameter to the HTTP Request
pub fn set_params(&mut self, params: Params)[src]
Sets paramaters with a given variable of Params type
pub fn generate_presigned_url(
&mut self,
creds: &AwsCredentials,
expires_in: &Duration,
should_sha256_sign_payload: bool
) -> String[src]
&mut self,
creds: &AwsCredentials,
expires_in: &Duration,
should_sha256_sign_payload: bool
) -> String
Generate a Presigned URL for AWS
See the documentation for more information.
pub fn complement(&mut self)[src]
Complement SignedRequest by ensuring the following HTTP headers are set accordingly:
- host
- content-type
- content-length (if applicable)
pub fn sign(&mut self, creds: &AwsCredentials)[src]
Signs the request using Amazon Signature version 4 to verify identity. Authorization header uses AWS4-HMAC-SHA256 for signing.
Trait Implementations
impl Debug for SignedRequest[src]
impl TryInto<Request<Body>> for SignedRequest[src]
Auto Trait Implementations
impl !RefUnwindSafe for SignedRequest
impl Send for SignedRequest
impl Sync for SignedRequest
impl Unpin for SignedRequest
impl !UnwindSafe for SignedRequest
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,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T> Instrument for T[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>[src]
pub fn in_current_span(self) -> Instrumented<Self>[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> Same<T> for T[src]
type Output = T
Should always be Self
impl<T> Sealed<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,