因为我连接的数据库在台湾,相距较远,所以conn.Open()方法打开极慢。前端Ajax访问API时,API的数据还未返回,前端Ajax访问已经超时。

所以设置一个轮询,设置相隔多少秒之后进行一次查询(也就是第二次Ajax查询的数据可能是上一次API返回的数据)

// 因为查询的数据库是台湾的,所以返回的数据会非常的慢。我这里设置了一个轮询机制,每秒查询一次,直到查询到结果
// 由于默认封装的getajax方法没有轮询这种功能,所以我自己写了一个轮询。
var checkLoading = function (timer) {
setTimeout(function () {
$.ajax({
type: 'post',
dataType: "text",
url: url,
data: param,
cache: false,
async: true,
timeout: 8000,
beforeSend: function () {
// 在html页面添加了一个<div id="warning"></div>
$('#warning').text('正在处理,请稍等!');
},
success: function (rs) {
// 数据加载出来后remove掉
$('#warning').remove(); var rt_data = eval('(' + rs + ')');
// 具体操作...
},
error: checkLoading
});
}, timer || 1000)
}
//第一次等1秒,第一次轮
checkLoading(1000)

前端Ajax通过设置 timeout 参数,轮询后台API的更多相关文章

  1. js前端ajax提交list集合参数至后端

    var orderNosList = new Array(); var rows = $("#dg_linkOrder").datagrid("getChecked&qu ...

  2. jquery使用ajax实现实时刷新,轮询

    来自:https://blog.csdn.net/qq_25406669/article/details/78343082 var isLoaded = false; function reqs() ...

  3. 使用Ajax轮询模拟简单的站内信箱(消息管理)功能

    前一段时间项目需要写一个类似于站内信箱的消息管理的功能,由于对前端不是很熟悉,刚开始不知道怎么做,后来看了网上的方案,现模拟一个非常简单的消息管理. 我们首先看一下最终效果的样式,就是非常简单的一个样 ...

  4. Ajax 长轮询

    长轮询:客户端向服务器发送Ajax请求,服务器接到请求后hold住连接,直到有新消息才返回响应信息并关闭连接,客户端处理完响应信息后再向服务器发送新的请求. 优点:在无消息的情况下不会频繁的请求. 缺 ...

  5. 轮询、长轮询与Web Socket的前端实现

    Web Socket 应用场景:实现即时通讯:如股票交易行情分析.聊天室.在线游戏等,替代轮询和长轮询 轮询 轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP request,然后由 ...

  6. 痞子衡嵌入式:超级下载算法(RT-UFL)开发笔记(4) - 轮询Flash配置参数

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是超级下载算法开发笔记(4)之轮询Flash配置参数. 文接上篇 <超级下载算法(RT-UFL)开发笔记(3) - 统一FlexSP ...

  7. polling轮询和comet

    comet:(原意:彗星) Comet is a web application model in which a long-held(held:保留) HTTP request allows a w ...

  8. Python知识之 方法与函数、偏函数、轮询和长轮询、流量削峰、乐观锁与悲观锁

    方法与函数 函数需要手动传参self.cls,方法自动传,比如对象方法自动传self,类方法自动传cls,而函数相对而言需要手动传,比如静态绑定的函数,self是需要手动传值得,比如我们平常使用的函数 ...

  9. 【轮询】【ajax】【js】【spring boot】ajax超时请求:前端轮询处理超时请求解决方案 + spring boot服务设置接口超时时间的设置

    场景描述: ajax设置timeout在本机测试有效,但是在生产环境等外网环境无效的问题 1.ajax的timeout属性设置 前端请求超时事件[网络连接不稳定时候,就无效了] var data = ...

随机推荐

  1. Scrapy 设置随机 User-Agent

    方式一:在每个 Spider中设置(针对单个Spider) class TencentSpider(scrapy.Spider): name = 'tencent' allowed_domains = ...

  2. LeetCode---Bit Manipulation && Design

    **401. Binary Watch 思路:产生两个list分别代表小时和分钟,然后遍历 public List<String> readBinaryWatch(int num) { L ...

  3. 移动平台对meta标签的定义

    一.meta 标签分两大部分:HTTP 标题信息(http-equiv)和页面描述信息(name). 1.http-equiv 属性的 Content-Type 值(显示字符集的设定) 说明:设定页面 ...

  4. spark streaming 5: InputDStream

    InputDStream的继承关系.他们都是使用InputDStream这个抽象类的接口进行操作的.特别注意ReceiverInputDStream这个类,大部分时候我们使用的是它作为扩展的基类,因为 ...

  5. koa 基础(二十四)封装 DB 库 --- 新增数据、更新数据、删除数据

    1.根目录/module/db.js /** * DB库 */ var MongoClient = require('mongodb').MongoClient; var Config = requi ...

  6. CoordinatorLayout使用全解析

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u012124438/article/details/56701641 CoordinatorLayo ...

  7. 自定义一个数组对象工具demo

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 安德鲁1.2Ku使用感受

    看中玻璃钢天线了,华达太贵,安德鲁性价比比较高.就在上周,决定入一个试试.周二微信转账,380+120运费,安能物流送货上门,上周6中午午睡时接到电话.去广场拿货. 锅面包装很简单,纸壳与胶带简单粗暴 ...

  9. pyqt5-实时刷新页面(QApplication.processEvents())

    对于执行很耗时的程序来说,由于PyQt需要等待程序执行完毕才能进行下一步,这个过程表现在界面上就是卡顿,而如果需要执行这个耗时程序时不断的刷新界面.那么就可以使用QApplication.proces ...

  10. Ubunut16.04 安装 Mahout

    近期笔者想安装mahout,看到网上教程过于陈旧,故记录之 转载请包含 http://www.cnblogs.com/lqruui/p/6037680.html 1.下载mahout   mahout ...