- when retry for jddj api, use different timestamp to distinguish request
This commit is contained in:
@@ -157,12 +157,12 @@ func (a *API) AccessAPI(apiStr string, jdParams map[string]interface{}) (retVal
|
|||||||
userGet = false
|
userGet = false
|
||||||
}
|
}
|
||||||
params["jd_param_json"] = jdParamStr
|
params["jd_param_json"] = jdParamStr
|
||||||
params["timestamp"] = utils.GetCurTimeStr()
|
|
||||||
sign := a.signParams(params)
|
|
||||||
params[signKey] = sign
|
|
||||||
|
|
||||||
err = platformapi.AccessPlatformAPIWithRetry(a.client,
|
err = platformapi.AccessPlatformAPIWithRetry(a.client,
|
||||||
func() *http.Request {
|
func() *http.Request {
|
||||||
|
params["timestamp"] = utils.GetCurTimeStr()
|
||||||
|
sign := a.signParams(params)
|
||||||
|
params[signKey] = sign
|
||||||
var request *http.Request
|
var request *http.Request
|
||||||
if userGet {
|
if userGet {
|
||||||
fullURL := utils.GenerateGetURL(prodURL, apiStr, params)
|
fullURL := utils.GenerateGetURL(prodURL, apiStr, params)
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ func AccessPlatformAPIWithRetry(client *http.Client, handleRequest func() *http.
|
|||||||
var errLevel string
|
var errLevel string
|
||||||
bodyMap, err := utils.HTTPResponse2Json(response)
|
bodyMap, err := utils.HTTPResponse2Json(response)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errLevel = ErrLevelGeneralFail //ErrLevelRecoverableErr // 为了配合京东到家排查返回HTML的错误,禁止重试
|
errLevel = ErrLevelRecoverableErr // 京东到家偶尔会返回HTML,重试
|
||||||
} else {
|
} else {
|
||||||
errLevel, err = handleResponse(bodyMap)
|
errLevel, err = handleResponse(bodyMap)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user