ajax响应时长怎样设置?

ajax响应时长怎样设置?,第1张

在项目中,点击所有导出数据,通过ajax的实现,将数据库中的相应数据转换为excel文件格式,可以下载到用户。

实际上,数据量非常大。ajax请求的响应时间太长,导致浏览器长时间不响应。

有几种方法可以解决这个问题:

首先是设置ajax请求时间。

测试后:服务器处理方法中的线程延迟证明超时无效,客户端等待响应,状态返回成功。注意,超时意味着设置请求超时时间,而不是服务器响应时间!

第二种情况是,当您返回数据时,尝试返回不太大的数据的字节,这可以单独传输。

Ajax请求是限时的,所以错误警告被捕获并处理后,可以用来提升用户体验。

请求超时这个参数通常就保留其默认值,要不就通过jQuery.ajaxSetup来全局设定,很少为特定的请求重新设置timeout选项。

timeout Number 设置请求超时时间(毫秒)。此设置将覆盖全局设置。 自己设置的 例如 timeout:1000

ajax请求时有个参数可以借鉴一下\x0d\x0avar ajaxTimeOut = $.ajax({\x0d\x0aurl:'', //请求的URL\x0d\x0atimeout : 1000, //超时时间设置,单位毫秒\x0d\x0atype : 'get', //请求方式,get或post\x0d\x0adata :{}, //请求所传参数,json格式\x0d\x0adataType:'json',//返回的数据格式\x0d\x0asuccess:function(data){ //请求成功的回调函数\x0d\x0aalert("成功")\x0d\x0a},\x0d\x0acomplete : function(XMLHttpRequest,status){ //请求完成后最终执行参数\x0d\x0aif(status=='timeout'){//超时,status还有success,error等值的情况\x0d\x0a\x0d\x0a   ajaxTimeOut.abort()//取消请求\x0d\x0a  alert("超时")\x0d\x0a\x0d\x0a}\x0d\x0a}\x0d\x0a})\x0d\x0a\x0d\x0a设置timeout的时间,通过检测complete时status的值判断请求是否超时,如果超时则取消请求


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6358851.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-21
下一篇 2023-03-21

发表评论

登录后才能评论

评论列表(0条)

保存