示例#1
0
    def limit_address(self, type):
        import time
        clientIp = public.GetClientIp()
        numKey = 'limitIpNum_' + clientIp
        limit = 6
        outTime = 600
        try:
            #初始化
            num1 = cache.get(numKey)
            if not num1:
                cache.set(numKey, 1, outTime)
                num1 = 1

            #计数
            if type == '+':
                cache.inc(numKey, 1)
                self.error_num()
                session['code'] = True
                return limit - (num1 + 1)

            #清空
            if type == '-':
                cache.delete(numKey)
                session['code'] = False
                return 1
            return limit - num1
        except:
            return limit
示例#2
0
 def error_num(self,s = True):
     nKey = 'panelNum'
     num = cache.get(nKey)
     if not num:
         cache.set(nKey,1)
         num = 1
     if s: cache.inc(nKey,1)
     if num > 6: session['code'] = True
示例#3
0
    def limit_address(self,type,v=""):
        import time
        clientIp = public.GetClientIp();
        numKey = 'limitIpNum_' + v + clientIp
        limit = 6;
        outTime = 600;
        try:
            #初始化
            num1 = cache.get(numKey)
            if not num1:
                cache.set(numKey,1,outTime);
                num1 = 1;
                        
            #计数
            if type == '+':
                cache.inc(numKey,1)
                self.error_num();
                session['code'] = True;
                return limit - (num1+1);

            #计数验证器
            if type == '++':
                cache.inc(numKey,1)
                self.error_num();
                session['code'] = False;
                return limit - (num1+1);

            #清空
            if type == '-':
                cache.delete(numKey);
                session['code'] = False;
                return 1;

            #清空验证器
            if type == '--':
                cache.delete(numKey);
                session['code'] = False;
                return 1;
            return limit - num1;
        except:
            return limit;