我有一个web应用程序,偶尔(在一些懒惰之后)会阻止一个非常简单的请求,小块数据(30~50 kb)长达20秒左右。假设我不能重构或修改API,那么javascript或jquery中是否存在某种模式来适应这种情况?
我正在考虑为api调用设置一个大约5秒的超时,并通过带有timeout参数的jquery的$.ajax()重试ajax请求。我认为这相当于用户刷新一个缓慢加载的页面。谢谢你的想法。
发布于 2013-11-30 12:16:06
默认情况下,jQuerys .ajax()方法是异步的,这意味着用户仍然可以使用页面。为了防止用户感到困惑或不耐烦,他们需要知道页面正在加载。jQuery为我们提供了显示加载消息的钩子:
$.ajax({
url: 'service.php',
success: function(){
//display results
},
beforeSend: function(){
// start an unobtrusive progress bar or spinner
}
complete: function(){
// hide the progress bar/spinner
}
}https://softwareengineering.stackexchange.com/questions/214539
复制相似问题