From 8fc3a19e1e998c34ffe9be921a5ba3f3b622addd Mon Sep 17 00:00:00 2001 From: vmarkov Date: Wed, 14 Mar 2018 19:01:46 +0200 Subject: [PATCH] Handle strings as response error_message Change-Id: I9643303973edd992066ff013a9cec21be689ae84 Closes-Bug: #1755851 --- pankoclient/exceptions.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pankoclient/exceptions.py b/pankoclient/exceptions.py index 53dcd21..2e59718 100644 --- a/pankoclient/exceptions.py +++ b/pankoclient/exceptions.py @@ -165,14 +165,17 @@ def from_response(response, url, method=None): if "retry-after" in response.headers: kwargs['retry_after'] = response.headers.get('retry-after') - if content_type == "application/json": try: body = response.json() except ValueError: pass else: - desc = body.get('error_message', {}).get('faultstring') + error_message = body.get('error_message', {}) + try: + desc = error_message.get('faultstring') + except AttributeError: + desc = error_message for enhanced_cls in enhanced_classes: if enhanced_cls.match.match(desc): cls = enhanced_cls