JSON API mit Javascript aufrufen

  • Hallo,


    ich möchte Wetterdaten über eine JSON API mit Javascript aufrufen, die Inhalte auswerten und in HTML darstellen.

    Auswerten (JSON.parse) und die einfache Darstellung in HTML scheint zu funktionieren.

    Allerdings weiß ich nicht wie der Code aussehen müsste um das JSON-File von einer URL abzuholen (im Beispiel ist es ja nur als Variable definiert).

    AJAX, PHP oder was auch immer kann ich leider nicht nutzen. Es muss reines Javascript sein!

    Kann jemand helfen?

  • Javascript läuft im Browser bzw. auf dem Client und dieser fragt mit Ajax bzw. XMLHttpRequest in deinem Fall Daten von einem anderen Server ab, d. h. es läuft nicht über den Server deines Homepageanbieters. Von daher verstehe ich diese Aussage nicht. Verbietet der Anbieter die Benutzung von Ajax? Ich kann mir eigentlich nur vorstellen, dass er Ajax auf dem eigenen Server ausschließt.

  • Wenn dem so ist, würde ich schleunigst den Anbieter wechseln. :D


    Dass Ajax angeblich auch nicht möglich ist, habe ich total überlesen. Dann würde mein Vorschlag natürlich auch nicht funktionieren.


    Eine Alternative dazu gibt es, glaube ich, nicht.

  • Als ich vor einiger Zeit in ein kleineres und günstigeres Homepagepaket wechselte lief plötzlich PHP nicht mehr. Bei der Rücksprache mit Deutschlands bestem Netz wurde mir mitgeteilt, dass in der kleineren HP-Variante nur Javascript benutzt werden kann. Bisher konnte ich damit aber gut leben.


    Leider bin ich nur Laie in Sachen Scriptsprachen und vor allem fehlt mir die Zeit tagelang nach Lösungen zu suchen. Zumal es für mich dann immer schwer ist zu beurteilen ob etwas aus den eingeschränkten technischen Gründen nicht funktioniert oder ob es an meinem fehlenden Wissen liegt.


    Habe es mal mit dem angehängten Code versucht, leider kam aber nichts zurück. Werde natürlich auch jeden anderen Code ausprobieren, den man mir anbietet.

  • Ist die URL geheim? Wenn es eine allgemein zugängliche API handelt doch eher nicht.

    Mit jQuery ist es sehr einfach:

    Code
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
        <script>
            $.getJSON(
                "datatables-ajax.json",
                function (data) {
                    console.log(data);
                }
            );
        </script>

    Natürlich die URL "datatables-ajax.json" durch deine ersetzen. Wenn es nicht funktioniert, dann poste die URL der Seite.

  • Danke!

    Ich muss leider gleich los. Werde es aber später gerne ausprobieren.


    Der Link ist mit einem User und einem Passwort versehen. Beides habe ich im angehängten Screenshot ausgeixt.

  • Leider funktioniert der Call mit jQuery nur, wenn das JSON-File lokal abgelegt ist.

    Ansonsten erhalte ich die beigefügte Fehlermeldung.

    Wenn es möglich ist schicke ich dir die URL gerne an eine private Adresse.

    Allgemein veröffentlichen möchte ich die URL aber nicht, da sie mir zum Testen anvertraut wurde.

  • Typisches cross-origin-Problem. Wenn die API angeboten wird, muss sie jedoch für cross-origin-Zugriff frei gegeben sein. Versuche es hiermit:

    Wenn es dann nicht funktioniert, öffne eine Unterhaltung und gib mir die URL.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!