现象:ERP绑定淘宝后,下载商品数据时如果成功,ajax不断尝试重发。
原因: /app/taoapi/lib/top/TopClient.php 中的curl()方法成功后,返回空值,而前端收到空值会当作超时,然后不断向目标地址发出重试请求。
解决办法:修正异常处理并为前端加上重试次数限制或手工重试。
if (curl_errno($ch))
{
throw new Exception(curl_error($ch),0);
}
else
{
$httpStatusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
{
if($httpStatusCode!='200'){ //状态码为200时跳过
throw new Exception($reponse,$httpStatusCode);
}
}
}
curl_close($ch);
return $reponse;
至于前端,在文件 /app/taoapi/view/download.html 中找到以下代码直接注释即可:
}else if (responseText == "timeout"){
//ajaxGetAll(task,page_no);//超时自动重试
}else{