HCHttpCallRequestGetRetryDelay
Obtient le délai entre les nouvelles tentatives HTTP, en secondes. Le délai par défaut et minimal est de 2 secondes.Syntaxe
Paramètres
call _In_opt_Type : HCCallHandle Le handle de l’appel HTTP. Passez nullptr pour obtenir la valeur par défaut des appels futurs. retryDelayInSeconds _In_
Type : uint32_t* Le délai entre les nouvelles tentatives, en secondes.
Valeur de retour
Type : HRESULT Code de résultat de cette opération d’API. Les valeurs possibles sont S_OK, E_INVALIDARG ou E_FAIL.Remarques
Les nouvelles tentatives sont retardées selon une interruption exponentielle. Par défaut, le premier délai est de 2 secondes, puis la tentative suivante est retardée de 4 secondes, puis de 8 secondes, et ainsi de suite jusqu’à un maximum de 1 minute, jusqu’à ce que l’appel réussisse ou que la fenêtre d’expiration HTTP soit atteinte, auquel cas l’appel échoue. Le délai varie également de façon aléatoire entre le délai actuel et le délai suivant afin de répartir la charge du service. La valeur par défaut de la fenêtre d’expiration HTTP est de 20 secondes et peut être modifiée à l’aide de HCSettingsSetTimeoutWindow()Si le service retourne une erreur HTTP avec un en-tête « Retry-After », tous les appels futurs à cette API échoueront immédiatement avec l’erreur d’origine, sans communiquer avec le service, jusqu’à ce que le délai « Retry-After » soit atteint.
Les appels de service idempotents font l’objet de nouvelles tentatives lorsqu’une erreur réseau se produit ou que le serveur répond
avec l’un des codes d’état HTTP suivants :
408 (Request Timeout)
429 (Too Many Requests)
500 (Internal Server Error)
502 (Bad Gateway)
503 (Service Unavailable)
504 (Gateway Timeout)
