in src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs [1240:1266]
private bool IsFailOverable(RequestFailedException rfe)
{
if (rfe.Status == HttpStatusCodes.TooManyRequests ||
rfe.Status == (int)HttpStatusCode.RequestTimeout ||
rfe.Status >= (int)HttpStatusCode.InternalServerError ||
rfe.Status == (int)HttpStatusCode.Forbidden ||
rfe.Status == (int)HttpStatusCode.Unauthorized)
{
return true;
}
Exception innerException;
if (rfe.InnerException is HttpRequestException hre)
{
innerException = hre.InnerException;
}
else
{
innerException = rfe.InnerException;
}
// The InnerException could be SocketException or WebException when an endpoint is invalid and IOException if it's a network issue.
return innerException is WebException ||
innerException is SocketException ||
innerException is IOException;
}