OpenWeatherMap

Dieses Beispiel zeigt die Kommunikation mit einer HTTPS/REST-API. HTTPS GET-Anfragen werden gesendet, um Wetterdaten von der REST-API „OpenWeatherMap“ zu erhalten. Die Antwort des Webservice mit den Daten erfolgt in einem JSON-Format.

OpenWeatherMap 1:

Um Anfragen an die OpenWeatherMap REST-API senden zu können, muss der Benutzer ein Konto für OpenWeatherMap erstellen, um eine Anwendungs-ID zu erhalten. In Kombination mit einer Standortkennung (z. B. Breitengrad/Längengrad, Stadt-ID, Stadtname) kann die Anwendungs-ID für die Abfrage der Wetterdaten verwendet werden.

Die API-Dokumentation für verschiedene Anwendungsfälle (16-Tage-Vorhersage, aktuelle Daten usw.) finden Sie hier: https://openweathermap.org/api.

PROGRAM MAIN
VAR
    // trigger command execution for OpenWeatherMap samples
    bGetOpenWeatherMap             : BOOL;

    fbHttpClientOpenWeatherMap     : FB_IotHttpClient :=(sHostName:='api.openweathermap.org',
                                     bKeepAlive:=TRUE, tConnectionTimeout:=T#10S);

    fbHttpGetOpenWeatherMap        : FB_TestHTTP_Get_openWeatherMap;
END_VAR
//init client parameters at startup
IF NOT fbHttpClientOpenWeatherMap.bConfigured THEN
    fbHttpClientOpenWeatherMap.nHostPort:= 443;
    fbHttpClientOpenWeatherMap.stTLS.bNoServerCertCheck:= TRUE;
END_IF

IF fbHttpClientOpenWeatherMap.bConfigured THEN
    fbHttpGetOpenWeatherMap(bSend:=bGetOpenWeatherMap, fbClient:=fbHttpClientOpenWeatherMap);
END_IF

fbHttpClientOpenWeatherMap.Execute();