为什么在asp的Global.asa中,不能用setTimeout?

我要在global.asa中实现,setTimeout调用,怎么不能呢?我的想做的就是利用setTimeout调用当前时间,与我数据库里的一个时间比较,如果数据库里的时间比当前时间早,那么就清除此记录。所以用到settimeout不断的调用时间。请那位高手指点!!

慕侠2389804
浏览 122回答 2
2回答

呼唤远方

setTimeout是DOM中window对象的方法,只能在客户端浏览器中运行,而global.asa是在服务器上运行。关于定期清除服务器中数据库记录,给你提供一下思路。方法1:如果是你自己的服务器,而不是租用的服务器空间,你可以写个专门定期处理数据库的驻留程序来进行操作。方法2:使用ajax,在客户端执行setTimeout定期向页面发送请求,页面收到请求后再处理数据库。方法3:使用global.asa中的Session_OnStart进程或者Session_OnEnd进程,在会话开始或者终止时处理数据库。如果访问量较大会话频繁的话,可以在Application_OnStart中用Application("clearTimer")记录开机时间,当Session开始或者中止时,比较当前时间和Application("clearTimer")记录的时间,如果超过规定时间则清理并记录清理时间,如未达到规定时间则不处理。

小怪兽爱吃肉

setTimeout是DOM中window对象的方法, 在后端当然无法使用了.其实你无需不断的去查询,只在有请求时再去处理就可以了,不然,没有请求,你处理给谁看呢
打开App,查看更多内容
随时随地看视频慕课网APP