Ankündigung

Einklappen
Keine Ankündigung bisher.

API Angebot in eine PHP Seite einbinden

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • API Angebot in eine PHP Seite einbinden

    Hallo,

    ich habe ein Problem mit einer API Einbindung

    Ich möchte für einen Kunden ein API Angebot in eine PHP Seite einbinden.

    Der API -Anbieter verlangt eine Authentifizierung einer Session vor weiteren Abfragen. Also mit PW und USERNAME.

    Dafür bietet er eine URL an die so aufgebaut ist:

    https://dieexternedomain.de/api/sess...ationKey=*****

    Wenn ich die URL im Browser öffne, werden die nötigen Cookies vom Anbieter auf meinem Rechner gesetzt.

    Wenn ich die Seite aber per file_get_contents im PHP-Script der Webseite meines Kunden aufrufe, werden keine Cookies vom API Anbieter gesetzt. Mit file_get_contents komme ich nicht weiter. Die Cookies sind aber zwingend erforderlich.

    Hat jemand einen Tipp für mich? Ich weiß ehrlich gesagt nicht, wonach ich suchen soll.

    Danke und Grüße


  • #2
    Schau dir cURL an. Hiermit kannst du Cookies empfangen und auch für weitere Requests wieder verwenden
    sorry, shift-taste kaputt

    Kommentar


    • #3
      Hallo Meister1900,

      vielen Dank für deinen Tipp. Ich habe das jetzt mit folgendem CURL Code probiert. Der Inhalt der URL wird zwar ausgegeben bzw. angezeigt aber ein Cookie wird trotzdem nicht gesetzt.


      PHP-Code:
      <?php

      // erzeuge einen neuen cURL-Handle
      $ch curl_init();

      // setze die URL und andere Optionen
      curl_setopt($chCURLOPT_URL"http://meineurl.de/");
      curl_setopt($chCURLOPT_HEADER0);

      // führe die Aktion aus und gib die Daten an den Browser weiter
      curl_exec($ch);

      // schließe den cURL-Handle und gib die Systemresourcen frei
      curl_close($ch);

      ?>

      Kommentar


      • #4
        der Inhalt der URL wird zwar ausgegeben bzw. angezeigt
        Mehr willst Du auch nicht, oder ?

        Und schau wie schön das mit Code tags aussieht.

        PHP-Code:
        <?php

        // erzeuge einen neuen cURL-Handle
        $ch curl_init();

        // setze die URL und andere Optionen
        curl_setopt($chCURLOPT_URL"http://meineurl.de/");
        curl_setopt($chCURLOPT_HEADER0);

        // führe die Aktion aus und gib die Daten an den Browser weiter
        curl_exec($ch);

        // schließe den cURL-Handle und gib die Systemresourcen frei
        curl_close($ch);
        Ich sehe kein PHP Code, in Bezug auf Cookies.
        Bitte nutze in der zukunft example.com als beispieldomain.

        Beispiele aus der Docu, schon gar nicht das erste, muss man so auch nicht posten; ein scrollen durch die Bespiele hilft meist mehr.

        Kommentar


        • #5
          Mehr willst Du auch nicht, oder ?
          Doch, ich will dass die Cookies der example.com ausgeführt werden. Wenn ich example.com im Browser öffne werden ja Cookies gesetzt. Wenn ich die example.com im PHP Code einlese eben nicht.

          Kommentar


          • #6
            Zitat von tomBuilder Beitrag anzeigen
            Ich sehe kein PHP Code, in Bezug auf Cookies.
            The string "()()" is not palindrom but the String "())(" is.

            Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
            PHP.de Wissenssammlung | Kein Support per PN

            Kommentar


            • #7
              Kleiner Tipp für weitere Recherchen, das Flag heisst: CURLOPT_COOKIEJAR
              [I]You know, my wife sometimes looks at me strangely. „Duncan“, she says, „there's more to life than Solaris“. Frankly, it's like she speaks another language. I mean, the words make sense individually, but put them together and it's complete nonsense.[/I]

              Kommentar


              • #8
                Könnte das nicht mit Send cookie with file_get_contents einfacher werden?

                Kommentar


                • #9
                  Zitat von jspit Beitrag anzeigen
                  Könnte das nicht mit Send cookie with file_get_contents einfacher werden?
                  Wenn du vorher erst noch den Cookie empfangen willst und dafür mit $http_response_header rumhantieren musst, wahrscheinlich eher nicht.
                  sorry, shift-taste kaputt

                  Kommentar

                  Lädt...
                  X