Imooc·Java高并发秒杀API(JavaScript模块化)

来源:互联网 发布:linux没有service命令 编辑:程序博客网 时间:2024/05/01 12:12

Imooc·Java高并发秒杀API(JavaScript模块化)

一、seckill.js

var seckill = {URL:{now:function(){return '/seckill/time/now';},exposer:function(seckillId){return '/seckill/'+seckillId+'/exposer';},kill:function(seckillId,md5){return '/seckill/'+seckillId+'/'+md5+'/execution';}},handlerSeckillKill:function(seckillId,node){node.hide().html('<button class="btn btn-primary btn-lg" id="killBtn">开始秒杀!</button>');//$.post('url',{},function(result){$.post(seckill.URL.exposer(seckillId),{},function(result){if(result && result['success']){var exposer = result['data'];//console.log("data"+data);if(exposer['exposed']){var md5 = exposer['md5'];//var killUrl = '/seckill/'+seckillId+'/'+md5+'/execution';var killUrl = seckill.URL.kill(seckillId,md5);$('#killBtn').one('click',function(){$(this).addClass('disabled');$.post(killUrl,{},function(data){if(data && data['success']){var result = data['data'];var state = result['state'];var stateInfo = result['stateInfo'];//node.html(stateInfo);node.html('<span class="label label-success">'+stateInfo+'</span>');}});});node.show();} else {var now = exposer['now'];var start = exposer['start'];var end = exposer['end'];seckill.countdown(seckillId,now,start,end);}} else {console.log("data"+data);}});},validatePhone:function(phone){if(phone && phone.length == 11 && !isNaN(phone)) return true;else return false;},countdown:function(seckillId,nowTime,startTime,endTime){var seckillBox = $('#seckill-box');if(nowTime > endTime) seckillBox.html('秒杀结束!');else if(nowTime < startTime) {var killTime = new Date(startTime + 1000);seckillBox.countdown(killTime,function(event){var format = event.strftime('秒杀计时:%D天 %H时 %M分 %S秒');seckillBox.html(format);}).on('finish.countdown',function(){seckill.handlerSeckillKill(seckillId,seckillBox);});}else seckill.handlerSeckillKill(seckillId,seckillBox);},detail:{init:function(params){var killPhone = $.cookie('killPhone');if(!seckill.validatePhone(killPhone)){var killPhoneModal = $('#killPhoneModal');killPhoneModal.modal({show: true,backdrop: 'static',keyboard: false});$('#killPhoneBtn').click(function(){var inputPhone = $('#killPhoneKey').val();if(seckill.validatePhone(inputPhone)){$.cookie('killPhone',inputPhone,{expires:7,path:'/seckill'});window.location.reload();} else {$('#killPhoneMessage').hide().html('<label class="label label-danger">手机号错误!</label>').show(300);}});}//$.get('/seckill/time/now',{},function(result){var startTime = params['startTime'];var endTime = params['endTime'];var seckillId = params['seckillId'];$.get(seckill.URL.now(),{},function(result){if(result && result['success']){var nowTime = result['data'];seckill.countdown(seckillId,nowTime,startTime,endTime);} else {console.log("data"+data);}});}}}

二、效果图



0 0
原创粉丝点击