Struct aws_sdk_cloudfront::model::AllowedMethods
source · #[non_exhaustive]pub struct AllowedMethods { /* private fields */ }
Expand description
A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices:
-
CloudFront forwards only
GET
andHEAD
requests. -
CloudFront forwards only
GET
,HEAD
, andOPTIONS
requests. -
CloudFront forwards
GET, HEAD, OPTIONS, PUT, PATCH, POST
, andDELETE
requests.
If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you might not want users to have permissions to delete objects from your origin.
Implementations§
source§impl AllowedMethods
impl AllowedMethods
sourcepub fn quantity(&self) -> Option<i32>
pub fn quantity(&self) -> Option<i32>
The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET
and HEAD
requests), 3 (for GET
, HEAD
, and OPTIONS
requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST
, and DELETE
requests).
sourcepub fn items(&self) -> Option<&[Method]>
pub fn items(&self) -> Option<&[Method]>
A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.
sourcepub fn cached_methods(&self) -> Option<&CachedMethods>
pub fn cached_methods(&self) -> Option<&CachedMethods>
A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices:
-
CloudFront caches responses to
GET
andHEAD
requests. -
CloudFront caches responses to
GET
,HEAD
, andOPTIONS
requests.
If you pick the second choice for your Amazon S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers, and Origin headers for the responses to be cached correctly.
source§impl AllowedMethods
impl AllowedMethods
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture AllowedMethods
.
Examples found in repository?
11659 11660 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 11687 11688 11689 11690 11691 11692 11693 11694 11695 11696 11697 11698 11699 11700 11701 11702 11703 11704 11705
pub fn deser_structure_crate_model_allowed_methods(
decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::AllowedMethods, aws_smithy_xml::decode::XmlDecodeError> {
#[allow(unused_mut)]
let mut builder = crate::model::AllowedMethods::builder();
while let Some(mut tag) = decoder.next_tag() {
match tag.start_el() {
s if s.matches("Quantity") /* Quantity com.amazonaws.cloudfront#AllowedMethods$Quantity */ => {
let var_458 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.cloudfront#integer`)"))
}
?
)
;
builder = builder.set_quantity(var_458);
}
,
s if s.matches("Items") /* Items com.amazonaws.cloudfront#AllowedMethods$Items */ => {
let var_459 =
Some(
crate::xml_deser::deser_list_com_amazonaws_cloudfront_methods_list(&mut tag)
?
)
;
builder = builder.set_items(var_459);
}
,
s if s.matches("CachedMethods") /* CachedMethods com.amazonaws.cloudfront#AllowedMethods$CachedMethods */ => {
let var_460 =
Some(
crate::xml_deser::deser_structure_crate_model_cached_methods(&mut tag)
?
)
;
builder = builder.set_cached_methods(var_460);
}
,
_ => {}
}
}
Ok(builder.build())
}
Trait Implementations§
source§impl Clone for AllowedMethods
impl Clone for AllowedMethods
source§fn clone(&self) -> AllowedMethods
fn clone(&self) -> AllowedMethods
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more