开发者社区> 问答> 正文

无限循环请求 ajax 发送一会后 java web 服务器无响应,一篇空白 400 请求报错 

<script type="text/javascript">
            $(document).ready(function(){
            	 $("#btnallpublish").click(function(){
					
					var websitearray = new Array();
					
					
						websitearray[0] = ["1","腾讯网"];
					
						websitearray[1] = ["2","凤凰网"];
					
					
					for(var i=0; i < websitearray.length; i ++){
						$.ajax({
							  url: "/WebsiteServlet",
							  data: {method: "allchannel", id: websitearray[i][0] },
							  type: 'POST',
							  async: false,
							  cache: false,
							  dataType: "json",
							  success: function(data){
							  	 if(data.length == 0){
							  	 	return false;
							  	 }

							  	 
							   	 $.each(data, function(j, itemw) {
						            
						            $.ajax({
									  url: "/KeywordsServlet",
				 					  data: {method: "collection", websiteid: itemw.id },
									  type: 'POST',
									  async: false,
									  cache: false,
									  dataType: "json",
									  success: function(data2){
									  	 if(data2.length == 0){
									  	 	return false;
									  	 }

									  	 
									   	 $.each(data2, function(k, itemk) {
									   	 	var keyword = itemk.keyword;

								            $.ajax({
											  url: "/ArticleServlet",
											  data: {method: "collection", keyword: keyword, id: itemk.id, websiteid: itemk.websiteid, websiteid: itemk.websiteid },
											  type: 'POST',
											  async: false,
											  cache: false,
											  success: function(data3){
										         
									             $.ajax({
													  url: "/PublishServlet",
													  data: {method: "allpublish", keyword: keyword, websiteid: itemk.websiteid, channelid:itemw.channelid },
													  type: 'POST',
													  async: false,
													  cache: false,
													  success: function(data4){
													  },
													  error: function(XMLHttpRequest, textStatus, errorThrown) {
	
													  }
												});
												 
											  },
											  error: function(XMLHttpRequest, textStatus, errorThrown) {
		
											  }
											});
								        });
								        
									  },
									  error: function(XMLHttpRequest, textStatus, errorThrown) {
									  }
									});
						        });
						        
							  },
							  error: function(XMLHttpRequest, textStatus, errorThrown) {
							  }
							});
	            	 	 }
	            	 });
            });                           

        </script>
这个事ajax 请求 
url: "/PublishServlet",
一直到这里都是可以有返回成功的,但是循环的次数多了 ,服务器会无响应 请问这是什么问题。

展开
收起
kun坤 2020-05-29 11:02:28 1310 0
1 条回答
写回答
取消 提交回答
  • 是不是要路径后面加上时间戳当参数?######回复 @我是码农 : 好吧楼下答得貌似很有道理.######每个请求 url 都是不一样的,这个加不加时间戳都没什么问题吧######http请求是否一直有######你循环写得太多了 服务器端响应不过来所以才会返回空白 我在本地测试都跑死了 搞清楚逻辑不要写这种死循环很容易把服务器跑挂的,要循环的话最好用定时器不要频繁请求######你这种不断的递归,怎么可能不跑死?###### 解决了,这个我循环 ajax 请求发送处理都会有时间间隔
    所以服务器没有崩溃,我发现 jsp 还是可以访问
    只有链接数据库的访问不了,所以我查出了
    c3p0 数据库连接池的问题,连接池耗尽了被锁死了

    2020-05-29 14:25:09
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Web应用系统性能优化 立即下载
高性能Web架构之缓存体系 立即下载
PWA:移动Web的现在与未来 立即下载