From 803d31dc9f79de00de3fa9c82e0628866097b137 Mon Sep 17 00:00:00 2001 From: Manny Dinssa <44172848+Dinssa@users.noreply.github.com> Date: Wed, 12 Mar 2025 10:06:34 +0000 Subject: [PATCH] Add error handling for JSON parsing in UPRN client --- app/services/uprn_client.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/services/uprn_client.rb b/app/services/uprn_client.rb index 97dc4753f..41a50e4f4 100644 --- a/app/services/uprn_client.rb +++ b/app/services/uprn_client.rb @@ -20,7 +20,13 @@ class UprnClient end def result - @result ||= JSON.parse(response.body).dig("results", 0, "DPA") || JSON.parse(response.body).dig("results", 0, "LPI") + @result ||= begin + parsed_response = JSON.parse(response.body) + parsed_response.dig("results", 0, "DPA") || parsed_response.dig("results", 0, "LPI") + rescue JSON::ParserError => e + Rails.logger.error("Failed to parse JSON response: #{e.message}") + nil + end end private