我正在调用一个外部API,希望处理一个调用返回Unauthorized HttpResponseMessage的事件。当这种情况发生时,我想刷新访问令牌并再次进行调用。 我尝试使用以下代码:Polly public async Task<HttpResponseMessage&g...
我想尝试将一个失败的操作重试3次。 我正在使用Polly进行重试操作。 如果重试操作失败,我希望能够获取异常并再次重试2次,以此类推。return await Policy .Handle<CustomException>() .Retr...
我正在使用非常不稳定的API。 有时候会出现500服务器错误和超时,有时候也会因为给它不能处理的输入而得到500服务器错误 SqlDateTime溢出。 必须介于1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之间。 这两种情况都会给我HttpRequ...
我希望使用 Polly 应用弹性策略。我正在使用 ASP.NET Core 2.1 中的 HttpClientFactory。我在Polly GitHub wiki上找到了一些指南。有两种配置策略的方式 - 使用 AddTransientHttpErrorPolicy 和 AddPolicyH...
我正在尝试正确使用超时策略。 在整合一个api时,我有以下需求: 创建一个HTTP请求以调用endpoint1并传递transactionID,捕获结果。 如果HTTP请求在20秒内没有收到答复,则发送一个带有相同transactionID的取消请求,并捕获结果。 为了完成这个任务,我想使...
我知道可以使用 Polly 指定需要重试的 HTTP 错误代码列表(例如 408、502、503 等),但如果没有指定任何代码,那么默认会重试哪些代码呢?
如何执行多个策略(或将它们合并为一个策略)?例如,我有:var policy1 = Policy.Handle<DivideByZeroException>().WaitAndRetry(5)); var policy2 = Policy.Handle<StackOverf...
我正在我的C# web应用程序中使用Polly来重试请求。 我的示例代码包含在此帖子中。 代码按预期工作,但传递给CreateFile()的最后一个参数(当前硬编码为0)需要是retryAttempt的值。 如何在Execute的Action中获取retryAttempt的值?return P...
我想介绍如何在我们的.net应用程序中处理瞬态错误。目前有两个可用的nu-get软件包,一个是Polly框架,另一个是Microsoft瞬态故障处理应用程序块。 我们调查并发现两个都支持异步功能和不同的重试策略。Polly框架还支持断路器。请问有人能够建议使用哪个框架并给出一些充分的理由。此...
我考虑使用 Polly 创建策略来记录异常并重新抛出。 我没有找到现成的方法可以直接实现,但我看到了一些选项。 备选方案 // Specify a substitute value or func, calling an action (e.g. for logging) // if th...