package app.services.steam; import app.entities.steam.SteamData; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; @Service public class SteamWebApi { private RestTemplate restTemplate; @Value("${backend.auth.steam_api_key}") private String webapi_key; @Autowired public SteamWebApi(){ restTemplate = new RestTemplate(); } public SteamData getSteamData(long steam64){ String url = String.format("https://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=%s&steamids=%s", webapi_key, steam64); try { ResponseEntity response = restTemplate.getForEntity(url, String.class); JsonNode player = (new ObjectMapper()).readTree(response.getBody()).get("response").get("players").get(0); return new SteamData(player); } catch (Exception err){ return null; } } }