public async Task <TrafficCameras> GetTrafficCameraData() { TrafficCameras trafficCameras = new TrafficCameras(); using var client = new HttpClient(); try { client.DefaultRequestHeaders.Add("Authorization", "apikey " + APIKey); var response = await client.GetAsync(URL); response.EnsureSuccessStatusCode(); var stringResult = await response.Content.ReadAsStringAsync(); trafficCameras = JsonConvert.DeserializeObject <TrafficCameras>(stringResult); } catch (HttpRequestException ex) { Console.WriteLine("Attempt to GET Data has failed with - " + ex.Message); return(trafficCameras); } catch (Exception ex) { Console.WriteLine(ex); //Typically would add to Error logs return(trafficCameras); } return(trafficCameras); }
public async Task ImportCorrectKeyCheckAsync() { string APIKey = "j1zHbAwDsYNo4sR9FpInRVzIX8698p9JxomI"; string URL = "https://api.transport.nsw.gov.au/v1/live/cameras"; ImportCameraData import = new ImportCameraData(APIKey, URL); TrafficCameras trafficCameras = new TrafficCameras(); trafficCameras = await import.GetTrafficCameraData(); Assert.NotNull(trafficCameras.Features); }
public ExportCameraData(TrafficCameras trafficCameras, string filename) { TrafficCameras = trafficCameras; FileName = filename; }