HTTP request geht im Browser aber nicht Node.js

  • Hallo zusammen,


    ich habe ein CMS (Directus) eingerichtet, auf dessen API ich von einer Node.js app zugreifen möchte. In meinem shared hosting zeigen zwei verschiedene Domains auf die API:


    URL-1: http://viodir.hosting128001.a2ff7.netcup.net/public/_/items/sprachen

    URL-2: http://directus.violina-petrychenko.de/public/_/items/sprachen


    Beide URLs liefern im Browser ein und dasselbe JSON-Objekt. Probiert es mal aus!


    Wenn ich nun aber einen request aus Node.js durchführe, dann funktioniert nur URL-1:


    URL-2 liefert dagegen gar kein JSON-Objekt, sondern eine HTML-Seite mit Fehlermeldung 404 Not Found:



    Fällt jemandem von euch eine Erklärung dafür ein, weshalb der request von URL-2 im Browser funktioniert, aber nicht aus Node.js heraus? Behandelt der Server verschiedene User-agent unterschiedlich? Soweit ich sehen kann, habe ich im Shared Hosting die gleichen Einstellungen für beide Subdomains eingestellt… aber vielleicht übersehe ich auch etwas…


    Stehe da grad echt auf dem Schlauch… muss auch zugeben, dass ich mich mit den Innereien des HTTP noch nicht wirklich gut auskenne…


    Vielen Dank und Grüße


    Oliver

  • Also ich habe gerade die URL2 mithilfe des bereitgestellten node.js snippets abgerufen und das korrekte JSON erhalten.

    Verwendest du genau das snippet, welches du hier zur Verfügung gestellt hast? Oder könnte es sein, dass im produktiven Code die URL schlicht falsch ist?

  • directus.violina-petrychenko.de hat einen AAAA Record, der vermutlich nicht korrekt ist (denn viodir.hosting128001.a2ff7.netcup.net hat keinen).

    Unterstützt also der (Host des) Client IPv6, fragt der bei irgend einem anderen Server nach und nicht beim Webhosting.

  • directus.violina-petrychenko.de hat einen AAAA Record, der vermutlich nicht korrekt ist


    Der AAAA Record scheint korrekt zu sein.

  • Erstmal danke euch beiden für die schnellen Antworten

    Also ich habe gerade die URL2 mithilfe des bereitgestellten node.js snippets abgerufen und das korrekte JSON erhalten.

    Verwendest du genau das snippet, welches du hier zur Verfügung gestellt hast? Oder könnte es sein, dass im produktiven Code die URL schlicht falsch ist?

    habe gerade noch einmal das exakte snippet hier aus dem Forum kopiert und direkt in eine node.js-konsole (einfach in bash gestartet) eingefügt… Ergebnis: 404. :/

    Wie gesagt, im Browser funktioniert es bei mir auch, nur eben nicht in Node.Js… dort bekomme ich folgende response: https://pastebin.com/ERxGjjXY

  • dort bekomme ich folgende response:

    Altes cPanel Hosting von con-ta-bo ...

    Wie lange hast du die Domain / das Hosting denn schon bei Netcup?


    Ich denke, dass sich das morgen von selbst lösen dürfte. Die Domain scheint im Webhosting noch im DNS Cache zu liegen und auf den alten Hoster zu zeigen.

  • Domain wurde gestern Nachmittag umgezogen…auf die Idee hätte aber auch mal kommen können, im output nach dem Namen des Konkurrenten zu suchen… dann würde ich das hier erstmal ruhen lassen… vielen Dank euch Allen!