class Google::Apis::ComputeV1::HttpRouteAction
Attributes
The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing ( CORS), see Fetch API Living Standard. Corresponds to the JSON property `corsPolicy` @return [Google::Apis::ComputeV1::CorsPolicy]
The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by the load balancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. Corresponds to the JSON property `faultInjectionPolicy` @return [Google::Apis::ComputeV1::HttpFaultInjection]
A Duration
represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like “day” or “month”. Range is approximately 10, 000 years. Corresponds to the JSON property `maxStreamDuration` @return [Google::Apis::ComputeV1::Duration]
A policy that specifies how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer doesn't wait for responses from the shadow service. Before sending traffic to the shadow service, the host or authority header is suffixed with -shadow. Corresponds to the JSON property `requestMirrorPolicy` @return [Google::Apis::ComputeV1::RequestMirrorPolicy]
The retry policy associates with HttpRouteRule
Corresponds to the JSON property `retryPolicy` @return [Google::Apis::ComputeV1::HttpRetryPolicy]
A Duration
represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like “day” or “month”. Range is approximately 10, 000 years. Corresponds to the JSON property `timeout` @return [Google::Apis::ComputeV1::Duration]
The spec for modifying the path before sending the request to the matched backend service. Corresponds to the JSON property `urlRewrite` @return [Google::Apis::ComputeV1::UrlRewrite]
A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non- zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction
. Corresponds to the JSON property `weightedBackendServices` @return [Array<Google::Apis::ComputeV1::WeightedBackendService>]
Public Class Methods
# File lib/google/apis/compute_v1/classes.rb, line 11532 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/compute_v1/classes.rb, line 11537 def update!(**args) @cors_policy = args[:cors_policy] if args.key?(:cors_policy) @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy) @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration) @request_mirror_policy = args[:request_mirror_policy] if args.key?(:request_mirror_policy) @retry_policy = args[:retry_policy] if args.key?(:retry_policy) @timeout = args[:timeout] if args.key?(:timeout) @url_rewrite = args[:url_rewrite] if args.key?(:url_rewrite) @weighted_backend_services = args[:weighted_backend_services] if args.key?(:weighted_backend_services) end