|
@@ -1,14 +1,15 @@
|
|
|
import datetime
|
|
|
-
|
|
|
+import logging
|
|
|
import jwt
|
|
|
import time
|
|
|
import requests
|
|
|
|
|
|
-from Model.models import TokenRecord
|
|
|
from Object.RedisObject import RedisObject
|
|
|
from Ansjer.config import OAUTH_ACCESS_TOKEN_SECRET, OAUTH_REFRESH_TOKEN_SECRET, OAUTH_ACCESS_TOKEN_TIME, \
|
|
|
OAUTH_REFRESH_TOKEN_TIME, CONFIG_INFO, CONFIG_TEST, CONFIG_CN, DETECT_PUSH_DOMAINS, LOGGER
|
|
|
|
|
|
+logger = logging.getLogger('token')
|
|
|
+
|
|
|
|
|
|
class TokenObject:
|
|
|
|
|
@@ -46,16 +47,16 @@ class TokenObject:
|
|
|
|
|
|
except jwt.ExpiredSignatureError as e:
|
|
|
self.code = 309
|
|
|
- # self.update_token(repr(e))
|
|
|
+ logger.info('errLine:{}, errMsg:{}, token:{}'.format(e.__traceback__.tb_lineno, repr(e), self.token))
|
|
|
return
|
|
|
except Exception as e:
|
|
|
self.code = 309
|
|
|
- # self.update_token(repr(e))
|
|
|
+ logger.info('errLine:{}, errMsg:{}, token:{}'.format(e.__traceback__.tb_lineno, repr(e), self.token))
|
|
|
return
|
|
|
else:
|
|
|
if not self.userID:
|
|
|
self.code = 309
|
|
|
- # self.update_token('缺少用户ID')
|
|
|
+ logger.info('errMsg:{}, token:{}'.format('缺少用户ID', self.token))
|
|
|
return
|
|
|
else:
|
|
|
if self.userID:
|
|
@@ -69,7 +70,8 @@ class TokenObject:
|
|
|
return res
|
|
|
if self.token != redis_token:
|
|
|
self.code = 310
|
|
|
- # self.update_token('重复登录')
|
|
|
+ logger.info(
|
|
|
+ 'errMsg:{}, token:{}, redis_token:{}'.format('多点登录', self.token, redis_token))
|
|
|
return
|
|
|
self.code = 0
|
|
|
return res
|
|
@@ -77,10 +79,9 @@ class TokenObject:
|
|
|
self.code = 309
|
|
|
return
|
|
|
|
|
|
- def generate(self, old_refresh_token=None, data=None):
|
|
|
+ def generate(self, data=None):
|
|
|
if data is None:
|
|
|
data = {}
|
|
|
- now_time = int(time.time())
|
|
|
try:
|
|
|
if CONFIG_INFO == CONFIG_TEST or CONFIG_INFO == CONFIG_CN:
|
|
|
access_expire = int(datetime.timedelta(days=60).total_seconds())
|
|
@@ -129,21 +130,11 @@ class TokenObject:
|
|
|
result = requests.post(push_url, data={'push_token': data['tokenVal'], 'user_id': data['userID'],
|
|
|
'app_bundle_id': app_bundle_id})
|
|
|
LOGGER.info('{}登出推送结果:{}'.format(data['userID'], result.json()))
|
|
|
- # if old_refresh_token:
|
|
|
- # token_qs = TokenRecord.objects.filter(refresh_token=old_refresh_token, user_id=data['userID'])
|
|
|
- # if token_qs.exists():
|
|
|
- # token_qs.update(refresh_token=refresh_token, access_token=access_token, updated_time=now_time)
|
|
|
- # else:
|
|
|
- # TokenRecord.objects.create(access_token=access_token, refresh_token=refresh_token, data=data,
|
|
|
- # created_time=now_time, updated_time=now_time, user_id=data['userID'])
|
|
|
- # else:
|
|
|
- # TokenRecord.objects.create(access_token=access_token, refresh_token=refresh_token, data=data,
|
|
|
- # created_time=now_time, updated_time=now_time, user_id=data['userID'])
|
|
|
+ logger.info(
|
|
|
+ '用户登录信息, data:{}, access_token:{}, refresh_token:{}'.format(data, access_token, refresh_token))
|
|
|
except Exception as e:
|
|
|
self.code = 309
|
|
|
- # if old_refresh_token:
|
|
|
- # TokenRecord.objects.filter(refresh_token=old_refresh_token, user_id=data['userID']).update(
|
|
|
- # code=self.code, error_info=e, update_time=now_time)
|
|
|
+ logger.info('errLine:{}, errMsg:{}, token:{}'.format(e.__traceback__.tb_lineno, repr(e), self.token))
|
|
|
print(repr(e))
|
|
|
else:
|
|
|
self.code = 0
|
|
@@ -182,18 +173,14 @@ class TokenObject:
|
|
|
print('过期')
|
|
|
print(repr(e))
|
|
|
self.code = 309
|
|
|
- # self.update_token(repr(e))
|
|
|
+ logger.info('errLine:{}, errMsg:{}, token:{}'.format(e.__traceback__.tb_lineno, repr(e), self.token))
|
|
|
except Exception as e:
|
|
|
self.code = 309
|
|
|
- # self.update_token(repr(e))
|
|
|
+ logger.info('errLine:{}, errMsg:{}, token:{}'.format(e.__traceback__.tb_lineno, repr(e), self.token))
|
|
|
print(repr(e))
|
|
|
else:
|
|
|
self.userID = res.get('userID', None)
|
|
|
self.user = res.get('user', '')
|
|
|
self.lang = res.get('lang', None)
|
|
|
- refreshRes = self.generate(self.token, data=res)
|
|
|
+ refreshRes = self.generate(data=res)
|
|
|
return refreshRes
|
|
|
-
|
|
|
- def update_token(self, e):
|
|
|
- TokenRecord.objects.filter(access_token=self.token).update(code=self.code, error_info=e,
|
|
|
- updated_time=int(time.time()))
|