应该针对Web API请求重新调整哪些错误?

时间:2016-01-14 12:09:08

标签: php api curl

我正在实现一个从Web API检索信息的类。它将XML返回给HTTPS GET请求。我正在使用curl来处理请求,并希望它在出现错误时重试以使其更加健壮。

我目前正在重试(最多3次)所有卷曲错误和HTTP错误500,但我想知道这是否是最佳方法。

那么我应该针对我的API请求重试curl和http错误?什么是最佳做法?

2 个答案:

答案 0 :(得分:1)

我会说不要重试500错误。这是API方面的一些错误,并且不太可能改变(至少在几秒钟内)。

如果您真的想重试一些回复,请在超时时进行,即。 408504。它可能是服务器接收的请求超出了它可以处理的数量,等待几秒钟再试一次可能是值得的。

答案 1 :(得分:1)

我不同意500个错误。例如,Mailgun API已经返回间歇性的421和500错误,重试可能会成功。由于您只尝试了几次并且错误应该很少,所以当您得到错误时,您可能会做出更多尝试。

我会重试这些HTTP错误:

408,421,429,500,502,503,504

对代码的含义有一个很好的解释HERE