CacheBehavior class
A complex type that describes how CloudFront processes requests.
You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.
For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see Quotas in the Amazon CloudFront Developer Guide.
If you don’t want to specify any cache behaviors, include only an empty
CacheBehaviors
element. Don’t include an empty
CacheBehavior
element because this is invalid.
To delete all cache behaviors in an existing distribution, update the
distribution configuration and include only an empty
CacheBehaviors
element.
To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.
For more information about cache behaviors, see Cache Behavior Settings in the Amazon CloudFront Developer Guide.
Constructors
- CacheBehavior({required ForwardedValues forwardedValues, required int minTTL, required String pathPattern, required String targetOriginId, required TrustedSigners trustedSigners, required ViewerProtocolPolicy viewerProtocolPolicy, AllowedMethods? allowedMethods, bool? compress, int? defaultTTL, String? fieldLevelEncryptionId, LambdaFunctionAssociations? lambdaFunctionAssociations, int? maxTTL, bool? smoothStreaming})
- CacheBehavior.fromXml(XmlElement elem)
-
factory
Properties
- allowedMethods → AllowedMethods?
-
final
- compress → bool?
-
Whether you want CloudFront to automatically compress certain files for this
cache behavior. If so, specify true; if not, specify false. For more
information, see Serving
Compressed Files in the Amazon CloudFront Developer Guide.
final
- defaultTTL → int?
-
The default amount of time that you want objects to stay in CloudFront
caches before CloudFront forwards another request to your origin to
determine whether the object has been updated. The value that you specify
applies only when your origin does not add HTTP headers such as
Cache-Control max-age
,Cache-Control s-maxage
, andExpires
to objects. For more information, see Managing How Long Content Stays in an Edge Cache (Expiration) in the Amazon CloudFront Developer Guide.final - fieldLevelEncryptionId → String?
-
The value of
ID
for the field-level encryption configuration that you want CloudFront to use for encrypting specific fields of data for this cache behavior.final - forwardedValues → ForwardedValues
-
A complex type that specifies how CloudFront handles query strings, cookies,
and HTTP headers.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- lambdaFunctionAssociations → LambdaFunctionAssociations?
-
A complex type that contains zero or more Lambda function associations for a
cache behavior.
final
- maxTTL → int?
-
The maximum amount of time that you want objects to stay in CloudFront
caches before CloudFront forwards another request to your origin to
determine whether the object has been updated. The value that you specify
applies only when your origin adds HTTP headers such as
Cache-Control max-age
,Cache-Control s-maxage
, andExpires
to objects. For more information, see Managing How Long Content Stays in an Edge Cache (Expiration) in the Amazon CloudFront Developer Guide.final - minTTL → int
-
The minimum amount of time that you want objects to stay in CloudFront
caches before CloudFront forwards another request to your origin to
determine whether the object has been updated. For more information, see
Managing How Long Content Stays in an Edge Cache (Expiration) in the
Amazon CloudFront Developer Guide.
final
- pathPattern → String
-
The pattern (for example,
images/.jpg
) that specifies which requests to apply the behavior to. When CloudFront receives a viewer request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution..jpg
. CloudFront behavior is the same with or without the leading/
. The path pattern for the default cache behavior is*
and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.final - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- smoothStreaming → bool?
-
Indicates whether you want to distribute media files in the Microsoft Smooth
Streaming format using the origin that is associated with this cache
behavior. If so, specify
true
; if not, specifyfalse
. If you specifytrue
forSmoothStreaming
, you can still distribute other content using this cache behavior if the content matches the value ofPathPattern
.final - targetOriginId → String
-
The value of
ID
for the origin that you want CloudFront to route requests to when they match this cache behavior.final - trustedSigners → TrustedSigners
-
A complex type that specifies the AWS accounts, if any, that you want to
allow to create signed URLs for private content.
final
- viewerProtocolPolicy → ViewerProtocolPolicy
-
The protocol that viewers can use to access the files in the origin
specified by
TargetOriginId
when a request matches the path pattern inPathPattern
. You can specify the following options:final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
toXml(
String elemName, {List< XmlAttribute> ? attributes}) → XmlElement
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited