diff --git a/platformapi/platformapi.go b/platformapi/platformapi.go index 4bcaa593..d2a68678 100644 --- a/platformapi/platformapi.go +++ b/platformapi/platformapi.go @@ -123,7 +123,14 @@ func AccessPlatformAPIWithRetry(client *http.Client, handleRequest func() *http. baseapi.SugarLogger.Infof("AccessPlatformAPIWithRetry:%s access api too slow, url:%v, request:%v, usedMilliSecond:%d", trackID, request.URL, getClonedData(request.URL, savedBuf), usedMilliSecond) } defer response.Body.Close() - if response.StatusCode != 200 { + if response.StatusCode != http.StatusOK { + // todo, hardcode,暂时在这里处理饿百的访问异常 + if response.StatusCode == http.StatusBadRequest && request.URL.Hostname() == "api-be.ele.me" { + recoverableErrorRetryCount++ + if recoverableErrorRetryCount <= config.MaxRecoverableRetryCount { + continue + } + } if bodyData, err := ioutil.ReadAll(response.Body); err == nil { baseapi.SugarLogger.Infof("AccessPlatformAPIWithRetry:%s HTTP code is:%d, url:%v, request:%v, response:%s", trackID, response.StatusCode, request.URL, getClonedData(request.URL, savedBuf), string(bodyData)) } else {