pub enum AwsProtocol {
Query,
Ec2Query,
Json,
Rest,
RestJson,
}Expand description
The wire protocol used by an AWS service.
Variants§
Query
Query protocol: form-encoded body, Action param, XML response. Used by: SQS, SNS, IAM, STS.
Ec2Query
EC2 Query protocol: a variant of Query. Requests are wire-identical to
Query (form-encoded body, Action param), but responses — including
errors — use EC2’s distinct XML envelope. Where Query/awsQuery emits
<ErrorResponse><Error><Type/><Code/><Message/></Error><RequestId/>,
ec2Query emits <Response><Errors><Error><Code/><Message/></Error></Errors><RequestID/></Response>
(root <Response>, an <Errors> wrapper, no <Type>, and capital-ID
<RequestID>). The AWS SDKs (aws-sdk-go-v2/Terraform, aws-sdk-js v3,
aws-sdk-rust, aws-sdk-java v2) parse EC2 error codes strictly against
this shape. Used by: EC2.
Json
JSON protocol: JSON body, X-Amz-Target header, JSON response. Used by: SSM, EventBridge, DynamoDB, SecretsManager, KMS, CloudWatch Logs.
Rest
REST protocol: HTTP method + path-based routing, XML responses. Used by: S3, API Gateway, Route53.
RestJson
REST-JSON protocol: HTTP method + path-based routing, JSON responses. Used by: Lambda, SES v2.
Trait Implementations§
Source§impl Clone for AwsProtocol
impl Clone for AwsProtocol
impl Copy for AwsProtocol
Source§impl Debug for AwsProtocol
impl Debug for AwsProtocol
impl Eq for AwsProtocol
Source§impl PartialEq for AwsProtocol
impl PartialEq for AwsProtocol
impl StructuralPartialEq for AwsProtocol
Auto Trait Implementations§
impl Freeze for AwsProtocol
impl RefUnwindSafe for AwsProtocol
impl Send for AwsProtocol
impl Sync for AwsProtocol
impl Unpin for AwsProtocol
impl UnsafeUnpin for AwsProtocol
impl UnwindSafe for AwsProtocol
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.