From d1a8d1a9845e74e7dc4501cb609ebae464b48a01 Mon Sep 17 00:00:00 2001 From: Bryan Newbold Date: Thu, 22 Aug 2019 23:51:34 +0200 Subject: container issnl: handle invalid ISSN-L better, and fix except blocks --- python/fatcat_web/routes.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'python') diff --git a/python/fatcat_web/routes.py b/python/fatcat_web/routes.py index 126bcdd0..5789dc48 100644 --- a/python/fatcat_web/routes.py +++ b/python/fatcat_web/routes.py @@ -686,9 +686,12 @@ def stats_json(): @app.route('/container/issnl//stats.json', methods=['GET', 'OPTIONS']) @crossdomain(origin='*',headers=['access-control-allow-origin','Content-Type']) def container_issnl_stats(issnl): + if not (len(issnl) == 9 and issnl[4] == '-'): + flash("Not a valid ISSN-L: {}".format(issnl)) + abort(400) try: container = api.lookup_container(issnl=issnl) - except Exception as ae: + except ApiException as ae: abort(ae.status) try: stats = get_elastic_container_stats(container.ident, issnl=container.issnl) @@ -702,7 +705,7 @@ def container_issnl_stats(issnl): def container_ident_stats(ident): try: container = api.get_container(ident) - except Exception as ae: + except ApiException as ae: abort(ae.status) try: stats = get_elastic_container_stats(container.ident, issnl=container.issnl) -- cgit v1.2.3