Cocos2dx网络(二)Token生成

Token,证书。对HTTP连接而言,主要作用是区分此次请求是哪次(哪天)登录后的。所以它必备以下几点:

  1. 唯一性。不同用户的每次登录都要有唯一的Token。
  2. 有效时间。超过这个时间这个Token就失效。
  3. 开始时间。没这个没法检测是否失效

基于上面三点,编写了一个简单的Token生成、验证:

 1 import time
 2 import base64
 3 
 4 class Token:
 5     #playerid可换成自己的字符串,确保每个用户都不同
 6     def getToken(self, playid, delaytime):
 7         curTime = int(time.time())
 8         #组合生成方式可自己相应修改
 9         mystr = str(playid)+'$'+str(curTime)+'$'+str(delaytime)
10         token = base64.encodestring(mystr).strip()
11         return token
12 
13     #检查时间判断是否失效
14     def isTokenValible(self, token):
15         base64text = base64.decodestring(token)
16         strlist = base64text.split('$')
17         curTime = int(time.time())
18         startTime = int(strlist[1])
19         if curTime - startTime > int(strlist[2]):
20             return False
21         else:
22             return True

 

posted @ 2014-11-04 18:01  lybog  阅读(571)  评论(0)    收藏  举报