This commit is contained in:
Aevann1 2021-07-31 08:51:58 +02:00
parent bcb877aaf8
commit aebe6b9cb4
2 changed files with 57 additions and 7 deletions

View file

@ -261,4 +261,49 @@ def no_cors(f):
return resp
wrapper.__name__ = f.__name__
return wrapper
return wrapper
def api(*scopes, no_ban=False):
def wrapper_maker(f):
def wrapper(*args, **kwargs):
if request.path.startswith(('/api/v1','/api/v2')):
v = kwargs.get('v')
result = f(*args, **kwargs)
if isinstance(result, dict):
resp = result['api']()
else:
resp = result
if not isinstance(resp, RespObj):
resp = make_response(resp)
return resp
else:
result = f(*args, **kwargs)
if not isinstance(result, dict):
return result
try:
if request.path.startswith('/inpage/'):
return result['inpage']()
elif request.path.startswith(('/api/vue/','/test/')):
return result['api']()
else:
return result['html']()
except KeyError:
return result
wrapper.__name__ = f.__name__
return wrapper
return wrapper_maker