Gracefully report backend failure to connect

This commit is contained in:
Jiang Yio 2022-09-27 21:34:41 -04:00
parent b460313bc8
commit 406e96ce39

View File

@ -53,6 +53,7 @@ def application():
@app.post('/v1/vista') @app.post('/v1/vista')
def cb_connect(): def cb_connect():
params = request.json['params'] params = request.json['params']
try:
if params.get('secret') == secret: if params.get('secret') == secret:
cid = ''.join(secrets.choice(string.ascii_lowercase + string.digits) for i in range(64)) cid = ''.join(secrets.choice(string.ascii_lowercase + string.digits) for i in range(64))
while cid in clients: while cid in clients:
@ -61,6 +62,9 @@ def application():
return jsonify({ 'result': cid, 'error': None, 'id': request.json.get('id') }) return jsonify({ 'result': cid, 'error': None, 'id': request.json.get('id') })
else: else:
return jsonify({ 'result': None, 'error': { 'type': 'Unauthorized', 'args': [] }, 'id': request.json.get('id') }) return jsonify({ 'result': None, 'error': { 'type': 'Unauthorized', 'args': [] }, 'id': request.json.get('id') })
except Exception as ex:
logger.exception(request.url)
return jsonify({ 'result': None, 'error': { 'type': ex.__class__.__name__, 'args': ex.args }, 'id': request.json.get('id') })
@app.post('/v1/vista/<cid>/close') @app.post('/v1/vista/<cid>/close')
def cb_close(cid): def cb_close(cid):