ajax 轮询(适合web端二维码请求)
(前几天 一直弄二维码轮询登录 想了半天 总算弄出来了 分享给大家 ^-^)
轮询:
所谓轮询 肯定需要 setInterval 但是怎么加ajax请求 需要有点小问题而且轮询成功后需要停止 下来看代码吧
var tis = setInterval(function(){$.ajax(getting)},3000);//{调用ajax(自己封装的数据)},每3秒执行一次 var getting = { type:'GET', url://地址, success: function (obj) { console.log(obj) //这里需要你判断服务器返回的数据 //成功后取消clearTimeout(tis); }, error: function (err) { console.log(err); } }
大家如果写扫码登录的话 肯定在URL地址拼接时间戳 给大家写一个时间戳的封装函数 直接调用即可
Date.prototype.format = function (format) { var args = { "M+": this.getMonth() + 1, "d+": this.getDate(), "h+": this.getHours(), "m+": this.getMinutes(), "s+": this.getSeconds(), "q+": Math.floor((this.getMonth() + 3) / 3), //quarter "S": this.getMilliseconds() }; if (/(y+)/.test(format)) format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var i in args) { var n = args[i]; if (new RegExp("(" + i + ")").test(format)) format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? n : ("00" + n).substr(("" + n).length)); } return format; }; var tims = new Date().format("yyyyMMddhhmmssS")//调用格式根据需求比如:("yyyy-MM-dd-hh-mm-ssS") console.log(tims)
^-^