Wie kann ich SOAP-API Daten auf einer Webseite darstellen ohne die Seite neu laden zu müssen?

Von | 19.12.2022

Eine Möglichkeit, um das gewünschte Verhalten zu erzielen, wäre die Verwendung von AJAX (Asynchronous JavaScript and XML). AJAX ermöglicht es, Daten asynchron von einem Server abzurufen, ohne die gesamte Seite neu laden zu müssen.

Um diese Lösung zu implementieren, können Sie folgende Schritte ausführen:

  1. Erstellen Sie eine PHP-Datei, die die gewünschten Daten per SOAP-API abruft und zurückgibt. Diese Datei wird als „Datenquelle“ für Ihre AJAX-Anfragen dienen.
  2. Erstellen Sie ein JavaScript, das regelmäßig (z.B. alle 3 Sekunden) eine AJAX-Anfrage an die Datenquelle sendet und die Antwort verarbeitet. Hierbei können Sie die setInterval()-Funktion verwenden.
  3. Verarbeiten Sie die Antwort der AJAX-Anfrage, indem Sie den Inhalt der Seite dynamisch mit JavaScript aktualisieren. Dies kann beispielsweise mit der innerHTML-Eigenschaft von HTML-Elementen erfolgen.

Hier ist ein Beispiel für ein AJAX-Skript, das alle 3 Sekunden Daten von einer Datenquelle abruft und den Inhalt eines HTML-Elements aktualisiert:

// Set up the interval to make the AJAX request every 3 seconds
setInterval(function() {
  // Make an AJAX request to the data source
  var xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
      // Update the content of the HTML element with the response from the AJAX request
      document.getElementById("output").innerHTML = xhr.responseText;
    }
  };
  xhr.open("GET", "data-source.php", true);
  xhr.send();
}, 3000);

Dieses Skript sendet alle 3 Sekunden eine AJAX-Anfrage an die Datei „data-source.php“ und aktualisiert den Inhalt des HTML-Elements mit der ID „output“ mit der Antwort der Anfrage. Sie können dieses Skript in Ihre HTML-Seite einbinden, indem Sie es in einem <script>-Tag platzieren.

Ich hoffe, dies gibt Ihnen eine Idee, wie Sie Ihr Ziel erreichen können. Bitte lassen Sie mich wissen, wenn Sie weitere Fragen haben oder Hilfe benötigen.

Schreibe einen Kommentar