Benutzer-Werkzeuge

Webseiten-Werkzeuge


api:documentation:http:start

Dies ist eine alte Version des Dokuments!


Http-Requests

Mithilfe der Klassen HttpClient, HttpRequest und HttpResponse können von der Online-IDE aus http(s)-Anfragen gesendet werden. Es sind sowohl GET- als auch POST-Requests möglich. Die Benutzung der Klassen wird durch die Beispiele unten erklärt.

Beschränkung durch die Same-Origin-Policy der Server

Da die Online-IDE im Browser läuft, werden die http(s)-Requests aus der Webseite heraus per Javascript Fetch-API generiert. Origin der Anfragen ist daher https://www.learnj.de bzw. https://www.online-ide.de. Viele Server gestatten leider keine Requests von einem Origin, der nicht ihrer eigenen Domain entspricht (SOP = "same origin policy"). Von der Online-IDE aus können daher nur Daten von Servern abgerufen werden, die einen offenen CORS-Header gesetzt haben (Access-Control-Allow-Origin: *).

Beispiel 1: Durchschnittseinkommen in den USA nach Branche

Viele Daten über die USA erhält man auf der Seite https://datausa.io. Das öffentliche API ist hier beschrieben. Wir holen uns Daten über das jährliche Durchschnittseinkommen in Abhängigkeit von der Branche:

Die Ausgabe liegt im Json-Format vor. Zum Aufbereiten nutzen wir die JsonParser-Klasse der Online-IDE. Sie konvertiert die Json-Zeichenkette in einen Objektbaum. Wir betrachten zunächst den Beginn der Zeichenkette:

{"data":[{"ID Major Occupation Group":"110000-290000","Major Occupation Group":"Management, business, science, & arts occupations","ID Year":2020,"Year":"2020","ID Workforce Status":true,"Workforce Status":"true","Average Wage":81574.98386970875,"Average Wage Appx MOE":268.2938957859685,"Record Count":2816397,"Slug Major Occupation Group":"management-business-science-arts-occupations"},{"ID Major Occupation Group":"310000-390000","Major Occupation Group":"Service Occupations","ID Year":2020,"Year":"2020","ID Workforce Status":true,"Workforce Status":"true","Average Wage":27802.542188374573,"Average Wage Appx MOE":150.1426164834158,"Record Count":1067809,"Slug Major Occupation Group":"service-occupations"}
usw...
api/documentation/http/start.1680427729.txt.gz · Zuletzt geändert: 2023/04/02 11:28 von Martin Pabst

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki