From 19b00f8c61096bb9ab1a744aff9f84731db40722 Mon Sep 17 00:00:00 2001 From: Peter Siegmund Date: Mon, 28 Oct 2024 16:00:26 +0100 Subject: [PATCH] add error check for request Signed-off-by: Peter Siegmund --- .../timezone/service/impl/TimezoneServiceImpl.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/java/dev/mars3142/fhq/timezone_service/timezone/service/impl/TimezoneServiceImpl.java b/src/main/java/dev/mars3142/fhq/timezone_service/timezone/service/impl/TimezoneServiceImpl.java index 6ccf2a2..043aca6 100644 --- a/src/main/java/dev/mars3142/fhq/timezone_service/timezone/service/impl/TimezoneServiceImpl.java +++ b/src/main/java/dev/mars3142/fhq/timezone_service/timezone/service/impl/TimezoneServiceImpl.java @@ -48,11 +48,14 @@ public class TimezoneServiceImpl implements TimezoneService { @Override @Cacheable(value = "TZInfoByIp", key = "{#ip}") public WorldTimeApiIpResponse getTimeZoneInfoByIp(String ip) { - return restClient - .get() - .uri("https://worldtimeapi.org/api/ip/" + ip) - .retrieve() - .body(WorldTimeApiIpResponse.class); + return restClient + .get() + .uri("https://worldtimeapi.org/api/ip/" + ip) + .retrieve() + .onStatus(HttpStatusCode::is4xxClientError, (request, response) -> { + throw new NotFoundException(); + }) + .body(WorldTimeApiIpResponse.class); } @Override