Ajax循环时出错
Ajax Error when looping
我使用php和javascript/jquery的混合物抓取网站的价格从那里的网页,没有API,所以不幸的是我抓取html页面,并从html中获取价格/标题(我知道这是一个真正有风险的方式,但这是唯一的方法)。
总之,事情是这样的:
我使用php file_get_contents()
拉入外部网页
这个方法是在foreach循环中,对于我想从每个外部页面获取数据。
这是我的javascript。
<script src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js' type='text/javascript'></script>
<script type='text/javascript'>
console.log('page-{$i}');
$('.page-{$i}').find('.search_result_row').each(function(i, obj) {
//This will give us each individual apps details.
var appTitle = $(this).find('.title').text();
var appPrice = $(this).find('.search_price').text();
var appDiscount = $(this).find('.search_discount').text();
var appDetails = {
'appTitle' : appTitle,
'appPrice' : appPrice,
};
callAjax(appDetails);
var my_delay = 5000;
function callAjax(appDetails) {
$.ajax({
url: 'Upload.php',
type: 'POST',
data: appDetails,
dataType: 'JSON',
success:function(data) {
console.log(data);
},
error:function(jqXHR, textStatus, errorThrown) {
console.log('request failed ' + textStatus + errorThrown);
console.log(appDetails);
}
});
}
});
</script>
对于第一个URL,以及我正在抓取数据的大约一半的URL,一切都很好。问题是通过ajax发送的一些数据返回以下错误
Upload.php net::ERR_EMPTY_RESPONSE
你们有人能帮忙吗?
试试这个。在以json形式发布详细信息之前,必须对其进行字符串化。这可能是ERR_EMPTY_RESPONSE的原因。
function callAjax(appDetails) {
appDetailsJsonString = JSON.stringify(appDetails);
$.ajax({
url: 'Upload.php',
type: 'POST',
data: {appDetailsJson: appDetailsJsonString},
dataType: 'json',
success:function(data) {
console.log(data);
},
error:function(jqXHR, textStatus, errorThrown) {
console.log('request failed ' + textStatus + errorThrown);
console.log(appDetails);
}
});
}
相关文章:
- jQuery:循环一个具有不同超时值的循环
- 在循环中分配json值时,值被覆盖
- 完成ajax调用数组的循环,而不是在某个调用出错时中断
- JSON.parse在循环对象上未出错
- 在for循环中设置断点会导致在数组上使用原型时出错
- 向后循环遍历数组时出错
- 循环时 IE 中出错
- 在 for 循环中声明变量时出错
- .each循环遍历对象时出错
- 在ajax下使用每个循环时出错
- 初学者-“;NaN”;使用以下While循环时出错
- for循环中的JavaScript匿名函数出错
- 在Coffeescript: JSON中使用karma出错.串化循环结构序列化
- Ajax循环时出错
- 工作灯在循环中调用过程出错
- 在Node.js中,调用另一个js文件中定义的函数的循环会出错
- 为什么node.js中的async在循环中出错
- 一段时间循环中的 IF 语句不起作用,我哪里出错了
- 构造函数、数组或for循环出错
- javascript中的循环出错