REST API - Einfache Abfragen über http

joekater

Cadet 2nd Year
Registriert
Jan. 2023
Beiträge
19
Hallo zusammen,
ich habe eine lokale Seite mit einer API - Ich möchte gerne sehr sehr einfach eine abfrage schicken und ein Ergebnis erhalten.
Folgende Befehle wurden von den Entwicklern vorgegeben:

1676301571206.png

Könnt ihr da helfen? Seid bitte gnädig, ich habe vorher nichts mit API zu tun gehabt.

Danke und Gruß,
Joe
 
PHP:
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "/api/v1/bases");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    "Accept: application/json",
    "x-access-token: <API Key>"
]);
$result = curl_exec($curl);
 
  • Gefällt mir
Reaktionen: kim88 und madmax2010
Ich habe meinen Code wie folgt aufgebaut und ich bekomme eine leere Seite zurück:
<html>
<head>
<title>PHP-Test</title>
</head>
<body>
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://localhost:8080/api/v1/bases");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
"Accept: application/json",
"x-access-token: BCDHBFDBLCXHYA"
]);
$result = curl_exec($curl);
?>
</body>

</html>
 
Du gibst ja auch nichts aus, die API gibt dir eine JSON zurück. Google nach php json encode und echo.

Aber vllt. kaut es dir noch jemand vor.
 
Habe so den Eindruck, dir fehlt schlicht das Verständnis davon, was eine REST-API ist und wie man sowas prinzipiell benutzt.
So eine API spuckt dir keine fertige Webseite aus, sondern nur reine Daten in einem definierten Format und was du dann damit innerhalb der Webseite machst oder wie du die anzeigst, ist dann dir überlassen.
 
  • Gefällt mir
Reaktionen: up.whatever
Tatsächlich fehlt mir an Wissen in diesem, habe auch zig Seiten über die API gelesen. Das Prinzip ist mir schon klar, ich will genau diese Daten, die mir die API rausspuckt anzeigen lassen - Mehr in diesem Schritt auch nicht.
 
Von der API bekommst du die erstmal nur irgendwelche Daten als JSON. Welche Daten genau steht ja in der Dokumentation der jeweiligen API, siehe dein Screenshot.

Sowohl zu REST APIs im Allgemeinen als auch zu JSON gibt es auch umfangreiche Wikipedia-Einträge. Wie du die Daten mit PHP verwendest und dann daraus die Webseite aufbaust, musst du in der Dokumentation zu PHP nachgucken. Als erstan Ansatzpunkt wurde hier ja schon json_decode genannt.
 
Ich fange an, einzusteigen - Mein Code sieht mittlerweile wie folgt aus (Auch wenn ich in dem Fall nur eine Id habe, habe ich eine Schleife genutzt):
<html>
<head>
<title>PHP-Test</title>
</head>
<body>
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://localhost:8080/api/v1/bases");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
"Accept: application/json",
"x-access-token: BCDHBFDBLCXHYA"
]);
$result = curl_exec($curl);
//var_dump($result);

foreach($result AS $value) {
echo $value["id"] . " " ."\n";
}

?>

</body>
</html>


Eine leere Seite ist immer noch das Ergennis leider :(
 
Ich habe das Gefühl, gar kein Inhalt wird bei mir angezeigt, nicht mal das hier:
<html>
<head>
<title>PHP-Test</title>
</head>
<body>
<?php
echo "TestPHP";
?>
</body>
</html>
 
Also wenn nicht mal ein Echo ausgegeben wird, rufst du entweder nicht die richtige Datei auf oder mit deiner Server Konfiguration stimmt etwas nicht.
 
Lies dir mal Tutorials zum Thema PHP REST client durch.
 
  • Gefällt mir
Reaktionen: joekater
Aber, dass gar kein PHP-Inhalt angezeigt wird, liegt erstmal nicht an der Anbindung an die API?
Ergänzung ()

kim88 schrieb:
Wie ist dein Setup? Welcher Webserver, Welche PHP Version? kann man das online irgendwo sehen, etc?
Was sagst du zu meiner Config?
 
Zuletzt bearbeitet:
joekater schrieb:
Aber, dass gar kein PHP-Inhalt angezeigt wird, liegt erstmal nicht an der Anbindung an die API?

Du hast das schon alles in einer .php Datei oder? Also "index.php" oder ähnlich. Wenn das in einer HTML Datei ist kann es je nach Server Config Probleme geben.
 
  • Gefällt mir
Reaktionen: joekater
Zurück
Oben