nodejs中搜索间隔设置

2020-07-12 22:10 2023-12-14 17:06 标签:nodejs,search

没有相关代码参考,自己写的不知是否科学,欢迎指正。
原理是将搜索时间存入session,搜索时当前时间-存入时间。

代码如下:

//搜索间隔
if(!req.session.searchDate){
    //console.log("设置saerch时间")
    //设置搜索session
    req.session.searchDate = new Date();
    articles = {success:true,list:await work.getArticleList(req)};
}else{
     let num = 60; //60秒才可再次搜索
     let date1 = new Date()
    let date2 = new Date(req.session.searchDate)
    let s1 = date1.getTime(),s2 = date2.getTime();
    let total = (s1-s2)/1000; //距再次搜索差多少秒
    if(total<num){
        //搜索频率太快提示
        articles = {success:false,msg:'由于频繁使用搜索,'+(num-parseInt(total))+'秒后才能再次搜索。'}
    }else{
        //60秒过后,可以搜索
        articles = {success:true,list:await work.getArticleList(req)};
    }
}



压缩解压