HttpRouteSpecOptions Struct
Properties specific for HTTP Based Routes.
Example
ts
declare const router: appmesh.VirtualRouter;
declare const node: appmesh.VirtualNode;
router.addRoute('route-http2-retry', {
routeSpec: appmesh.RouteSpec.http2({
weightedTargets: [{ virtualNode: node }],
retryPolicy: {
// Retry if the connection failed
tcpRetryEvents: [appmesh.TcpRetryEvent.CONNECTION_ERROR],
// Retry if HTTP responds with a gateway error (502, 503, 504)
httpRetryEvents: [appmesh.HttpRetryEvent.GATEWAY_ERROR],
// Retry five times
retryAttempts: 5,
// Use a 1 second timeout per retry
retryTimeout: Duration.seconds(1),
},
}),
});
Properties
matchoptionalHttpRouteMatchmatchoptionalHttpRouteMatchmatchoptionalHttpRouteMatchMatchoptionalHttpRouteMatchMatchoptionalHttpRouteMatch#The criterion for determining a request match for this Route.
Default: matches on '/'
priorityoptionalnumberpriorityoptionalint | floatpriorityoptionalNumberPriorityoptionaldoublePriorityoptional*float64#The priority for the route.
Default: no particular priority
When a Virtual Router has multiple routes, route match is performed in the order of specified value, where 0 is the highest priority, and first matched route is selected.
retryPolicyoptionalHttpRetryPolicyretry_policyoptionalHttpRetryPolicyretryPolicyoptionalHttpRetryPolicyRetryPolicyoptionalHttpRetryPolicyRetryPolicyoptionalHttpRetryPolicy#The retry policy.
Default: no retry policy
timeoutoptionalHttpTimeouttimeoutoptionalHttpTimeouttimeoutoptionalHttpTimeoutTimeoutoptionalHttpTimeoutTimeoutoptionalHttpTimeout= None#An object that represents a http timeout.
weightedTargetsWeightedTarget[]weighted_targetstyping.List[WeightedTarget]weightedTargetsList<WeightedTarget>WeightedTargetsWeightedTarget[]WeightedTargets*[]WeightedTargetrequired#List of targets that traffic is routed to when a request matches the route.