> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# HCHttpCallRequestGetRetryDelay

> HCHttpCallRequestGetRetryDelay

# HCHttpCallRequestGetRetryDelay

获取 HTTP 重试延迟（以秒为单位）。默认和最小延迟为 2 秒。

## Syntax

```cpp theme={null}
HRESULT HCHttpCallRequestGetRetryDelay(  
         HCCallHandle call,  
         uint32_t* retryDelayInSeconds  
)  
```

### Parameters

*call*   \_In\_opt\_\
Type: HCCallHandle

HTTP 调用的句柄。传入 nullptr 可获取用于未来调用的默认值。

*retryDelayInSeconds*   \_In\_\
Type: uint32\_t\*

重试延迟（以秒为单位）。

### Return value

Type: HRESULT

此 API 操作的结果代码。可能的值为 S\_OK、E\_INVALIDARG 或 E\_FAIL。

## Remarks

重试采用指数退避进行延迟。默认情况下，第一次延迟 2 秒，随后下一次重试延迟 4 秒，再下一次延迟 8 秒，依此类推，最长不超过 1 分钟，直到调用成功或达到 HTTP 超时窗口，此时该调用将失败。同时，在当前延迟和下一次延迟之间进行抖动处理，以分散服务负载。HTTP 超时窗口默认为 20 秒，可使用 HCSettingsSetTimeoutWindow() 更改。\
\
&#x20;如果服务返回带 "Retry-After" 标头的 HTTP 错误，则在达到 "Retry-After" 时间之前，对该 API 的所有后续调用都将立即以原始错误失败，而不会联系服务。\
\
&#x20;当发生网络错误或服务器返回以下 HTTP 状态代码之一时，将重试幂等服务调用：\
&#x20;408（请求超时）\
&#x20;429（请求过多）\
&#x20;500（内部服务器错误）\
&#x20;502（错误网关）\
&#x20;503（服务不可用）\
&#x20;504（网关超时）\


## Requirements

**Header:** httpProvider.h

**Library:** libHttpClient.GDK.lib

## See also

[httpProvider](https://docs.xbox.com/zh-CN/reference/live/httpclient/httpprovider/httpprovider_members.md)


## Related topics

- [httpProvider（内容）](https://docs.xbox.com/zh-CN/reference/live/httpclient/httpprovider/httpprovider_members.md)
- [HCHttpCallRequestSetRetryDelay](https://docs.xbox.com/zh-CN/reference/live/httpclient/httpclient/functions/hchttpcallrequestsetretrydelay.md)
- [XblContextSettingsGetHttpRetryDelay](https://docs.xbox.com/zh-CN/reference/live/xsapi-c/xbox_live_context_settings_c/functions/xblcontextsettingsgethttpretrydelay.md)
- [HCHttpCallRequestGetRetryAllowed](https://docs.xbox.com/zh-CN/reference/live/httpclient/httpprovider/functions/hchttpcallrequestgetretryallowed.md)
- [HCHttpCallRequestGetRetryCacheId](https://docs.xbox.com/zh-CN/reference/live/httpclient/httpprovider/functions/hchttpcallrequestgetretrycacheid.md)
