lua api限流

-- 全局变量,记录key
local limit = {}

-- 2为两次可以调用的最小间隔,单位秒
if limit[key] then
    --判断是否可被调用
    local lasttime = limit[key].lasttime
    local curtime = os.time()
    if curtime < lasttime + 2 then
        --不被调用
        return
    end

    limit[key].lasttime = curtime
else
    -- 可以被调用,记录数据
    local curtime = os.time()
    local data = {lasttime=curtime}
    limit[key] = data
end

 if..else..end部分代码可以放在API开头的位置,不被调用时可以返回指定的消息,我这里直接return掉了。

 

posted @ 2021-02-03 19:35  Smah  阅读(86)  评论(0编辑  收藏  举报