Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
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", usw...