Skip to content

Commit

Permalink
删除redis依赖
Browse files Browse the repository at this point in the history
  • Loading branch information
shenshuo committed Mar 7, 2019
1 parent 3984fca commit c8dc4ed
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 49 deletions.
6 changes: 3 additions & 3 deletions cron/applications.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,9 @@ def delete(self, *args, **kwargs):
data = json.loads(self.request.body.decode("utf-8"))
job_id = data.get('job_id')
if not job_id:
return self.write(dict(status=-1, msg='job id 不能为空'))
return self.write(dict(code=-1, msg='job id 不能为空'))
scheduler.remove_job(job_id)
return self.write(dict(status=0, msg='删除成功', job_id=job_id))
return self.write(dict(code=0, msg='删除成功', job_id=job_id))

def patch(self, *args, **kwargs):
"""暂停作业/恢复作业"""
Expand All @@ -113,7 +113,7 @@ def patch(self, *args, **kwargs):
except Exception as e:
response = dict(code=-3, msg="job {} {}".format(job_id, str(e)))
return self.write(response)
return self.write(dict(status=-4, msg='失败了'))
return self.write(dict(code=-4, msg='失败了'))


class CronLogs(BaseHandler):
Expand Down
44 changes: 16 additions & 28 deletions libs/base_handler.py
Original file line number Diff line number Diff line change
@@ -1,43 +1,31 @@
#!/usr/bin/env python
# -*-coding:utf-8-*-

import shortuuid
from websdk.cache import get_cache
from websdk.base_handler import BaseHandler as SDKBaseHandler

import jwt
from tornado.web import HTTPError
from websdk.base_handler import BaseHandler as SDKBaseHandler


class BaseHandler(SDKBaseHandler):
def __init__(self, *args, **kwargs):
self.new_csrf_key = str(shortuuid.uuid())
super(BaseHandler, self).__init__(*args, **kwargs)

def prepare(self):
# 验证客户端CSRF,如请求为GET,则不验证,否则验证。最后将写入新的key
cache = get_cache()
if self.request.method != 'GET':
csrf_key = self.get_cookie('csrf_key')
pipeline = cache.get_pipeline()
result = cache.get(csrf_key, private=False, pipeline=pipeline)
cache.delete(csrf_key, private=False, pipeline=pipeline)
if result != '1':
raise HTTPError(400, 'csrf error')

cache.set(self.new_csrf_key, 1, expire=1800, private=False)
self.set_cookie('csrf_key', self.new_csrf_key)

### 登陆验证
auth_key = self.get_cookie('auth_key', None)
self.xsrf_token
if not auth_key:
# 没登录,就让跳到登陆页面
raise HTTPError(401, 'auth failed')


def get_current_user(self):
return self.get_secure_cookie("username")

def get_current_id(self):
return self.get_secure_cookie("user_id")

def get_current_nickname(self):
return self.get_secure_cookie("nickname")
raise HTTPError(401, 'auth failed 1')
else:
user_info = jwt.decode(auth_key, verify=False).get('data')
self.user_id = user_info.get('user_id', None)
self.username = user_info.get('username', None)
self.nickname = user_info.get('nickname', None)
self.is_super = user_info.get('is_superuser', False)

if not self.user_id:
raise HTTPError(401, 'auth failed 2')

self.is_superuser = self.is_super
19 changes: 1 addition & 18 deletions settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

ROOT_DIR = os.path.dirname(__file__)
debug = True
xsrf_cookies = False
xsrf_cookies = True
expire_seconds = 365 * 24 * 60 * 60
cookie_secret = '61oETzKXQAGaYdkL5gEmGeJJFuYh7EQnp2X6TP1o/Vo='

Expand All @@ -27,13 +27,6 @@
READONLY_DB_DBPWD = os.getenv('READONLY_DB_DBPWD', 'ljXrcyn7chaBU4F')
READONLY_DB_DBNAME = os.getenv('READONLY_DB_DBNAME', 'do_cron')

DEFAULT_REDIS_HOST = os.getenv('DEFAULT_REDIS_HOST', '172.16.0.223')
DEFAULT_REDIS_PORT = os.getenv('DEFAULT_REDIS_PORT', '6379')
DEFAULT_REDIS_DB = 8
DEFAULT_REDIS_AUTH = True
DEFAULT_REDIS_CHARSET = 'utf-8'
DEFAULT_REDIS_PASSWORD = os.getenv('DEFAULT_REDIS_PASSWORD', '123456')

try:
from local_settings import *
except:
Expand All @@ -60,15 +53,5 @@
const.DBPWD_KEY: READONLY_DB_DBPWD,
const.DBNAME_KEY: READONLY_DB_DBNAME,
}
},
redises={
const.DEFAULT_RD_KEY: {
const.RD_HOST_KEY: DEFAULT_REDIS_HOST,
const.RD_PORT_KEY: DEFAULT_REDIS_PORT,
const.RD_DB_KEY: DEFAULT_REDIS_DB,
const.RD_AUTH_KEY: DEFAULT_REDIS_AUTH,
const.RD_CHARSET_KEY: DEFAULT_REDIS_CHARSET,
const.RD_PASSWORD_KEY: DEFAULT_REDIS_PASSWORD
}
}
)

0 comments on commit c8dc4ed

Please sign in to comment.