diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2019-08-22 23:51:34 +0200 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2019-08-22 23:51:34 +0200 |
commit | d1a8d1a9845e74e7dc4501cb609ebae464b48a01 (patch) | |
tree | f9b1d157bc815532b36b10e78d64d7eb357b3bac | |
parent | fbc03b9bcce0fb5066da574021744ccae2f28b9e (diff) | |
download | fatcat-d1a8d1a9845e74e7dc4501cb609ebae464b48a01.tar.gz fatcat-d1a8d1a9845e74e7dc4501cb609ebae464b48a01.zip |
container issnl: handle invalid ISSN-L better, and fix except blocks
-rw-r--r-- | python/fatcat_web/routes.py | 7 |
1 files changed, 5 insertions, 2 deletions
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/<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) |