From acc6cd6e4e2973105f1cfd08f432ad2c582a7a49 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Thu, 26 Oct 2023 11:31:35 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(service.py):=20handle=20JSON?= =?UTF-8?q?DecodeError=20when=20response=20does=20not=20contain=20data=20f?= =?UTF-8?q?ield=20to=20prevent=20server=20error=20=E2=9C=A8=20feat(service?= =?UTF-8?q?.py):=20return=20ComponentResponse=20with=20component=5Fdict=20?= =?UTF-8?q?when=20response=20does=20not=20contain=20data=20field=20to=20pr?= =?UTF-8?q?ovide=20consistent=20response=20format?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/langflow/services/store/service.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/backend/langflow/services/store/service.py b/src/backend/langflow/services/store/service.py index 83a199445..8b0f5c53f 100644 --- a/src/backend/langflow/services/store/service.py +++ b/src/backend/langflow/services/store/service.py @@ -199,8 +199,13 @@ class StoreService(Service): self.components_url, headers=headers, json=component_dict ) response.raise_for_status() - component = response.json()["data"] - return ComponentResponse(**component) + # ! If the user does not have permission to a certain field + # the request returns 204 and no data + try: + component = response.json()["data"] + return ComponentResponse(**component) + except json.JSONDecodeError: + return ComponentResponse(**component_dict) except HTTPError as exc: if response: try: