Benutzer-Werkzeuge

Webseiten-Werkzeuge


kommunikation:webservices:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
kommunikation:webservices:start [2024/02/18 17:25] – [Einfacher HTTP-Client] Martin Pabstkommunikation:webservices:start [2024/02/18 17:43] (aktuell) Martin Pabst
Zeile 33: Zeile 33:
  
 </HTML> </HTML>
 +
 +===== Wetterdaten vom DWD (Deutscher Wetterdienst) =====
 +<WRAP center round info 60%>
 +Der Deutsche Wetterdienst stellt unter der URL ''https://api.open-meteo.com'' einen Webservice zur Verfügung, über den man Wettervorhersagen zu beliebigen Orten in Deutschland abrufen kann. Klicken Sie zunächst auf den Link [[https://api.open-meteo.com/v1/forecast?latitude=52.52&longitude=13.41&hourly=temperature_2m]] um die aktuellen Wetterdaten für Manching mit dem Browser abzurufen.  
 +  * a) Die Daten sind im JSON-Format encodiert. Recherchieren Sie, wie in diesem Format Objekte und Listen dargestellt werden.
 +  * b) Auf [[https://open-meteo.com/en/docs/dwd-api|open-meteo.com]] ist der Zugang zur DWD Icon API beschrieben. Recherchieren Sie, wie die JSON-Daten zu interpretieren sind. 
 +  * c) Ändern Sie den Link so ab, dass die Wetterdaten Ihres Wohnortes angezeigt werden.
 +  * d) Für Leistungsstarke: Analysieren Sie das Programm unten, das die Wetterdaten von Manching abruft und die im JSON-Format kodierten Daten mit Hilfe einer vorgegebenen Klasse (''JsonParser'') dekodiert. Suchen Sie andere frei zugängliche Webservices im Internet und schreiben Sie ein entsprechendes Programm zum Abruf der Daten. \\ [[https://www.learnj.de/doku.php?id=api:documentation:http:start|Auf dieser Seite finden Sie die Beschreibung der JsonParser-Klasse]] und [[https://www.learnj.de/doku.php?id=api:documentation:http:apis:start|auf dieser Seite Links zu weiteren freien Webservices.]]
 +</WRAP>
 +
 +<HTML>
 +
 +<div class="java-online" style="height: 400px; width: 100%;" data-java-online="{'withBottomPanel': false, 'id': 'deutscherwetterdienst'}">
 +<script type="text/plain" title="Http-Test.java">
 +HttpClient client = new HttpClient();
 +// Wetter in Manching
 +
 +HttpRequest request = new HttpRequest().uri("https://api.open-meteo.com/v1/forecast?latitude=52.52&longitude=13.41&hourly=temperature_2m");
 +
 +HttpResponse response = client.send(request);
 +
 +String json = response.body();
 +println("Daten im JSON-Format:", Color.lightblue);
 +println(json);
 +
 +JsonElement main = JsonParser.parse(json);
 +
 +JsonElement hourly = main.getAttributeValue("hourly");
 +
 +JsonElement time = hourly.getAttributeValue("time");
 +JsonElement temperature = hourly.getAttributeValue("temperature_2m");
 +
 +for (int i = 0; i < time.getArrayValues().length; i++) {
 +   print(time.getArrayValues()[i].getAsString() + ": ");
 +   println(temperature.getArrayValues()[i].getAsDouble() + "°C", Color.lightcoral);
 +}
 +</script>
 +
 +</div>
 +
 +</HTML>
 +
  
  
  
kommunikation/webservices/start.1708277134.txt.gz · Zuletzt geändert: 2024/02/18 17:25 von Martin Pabst

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki