Amazon Web Services mit Tarzan für PHP

Im Tutorial haben wir gelernt, wie wir einfach mit PHP die Amazon Web Services ansprechen können. Wir haben allerdings auch gelernt, dass es sehr aufwendig ist, die Request-URL aufzubauen und das resultierende XML zu interpretieren. Um das Ganze etwas schneller hinzubekommen, gibt es Tarzan. Tarzan ist ein PHP-Toolkit, das es einem vereinfacht mit den Amazon Web Services zu kommunizieren.

Dabei unterstützt uns Tarzan nicht nur bei den sogenannten Associates Web Services (also der Abfrage des Amazon-Shops), sondern bildet auch alle anderen Web Services wie zum Beispiel die SimpleDB oder auch den Simple Storage Service ab. Dabei nimmt es uns direkt noch das Funktionscaching ab. Ich weiß, ich hätte das alles schon viel früher von mir geben können, und mir das Tutorial sparen, aber ich bin der festen Überzeugung, dass man wissen muss, was ein Toolkit eigentlich macht, bevor man es nutzt. Insofern ist das Tutorial sozusagen der notwendige Hintergrund zu Tarzan.

Um es zu Benutzen müssen wir Tarzan natürlich erstmal downloaden (http://tarzan-aws.com/) und entpacken. Danach geht es relativ einfach ans Eingemachte: im Entpacken Tarzan-Verzeichnis gibt es die Datei config-sample.inc.php, die nach config.inc.php unbenannt werden muss. Genau in diese Datei trägt man dann auch den eigenen Amazon-API-Key und die eigenen Associate-ID ein. Hierfür stehen die Konstanten API_KEY und AWS_ASSOC_ID.

Und nun kann es eigentlich schon los richtig gehen, folgender Code

require_once('tarzan/tarzan.class.php');
$aaws = new AmazonAAWS; 
$search = $aaws->item_lookup( '0596515812', array('ResponseGroup' => 'Large') , AAWS_LOCALE_GERMANY );
var_dump($search);

liefert das resultierende XML (allerdings ungecached!), das Ganze zu cachen wäre mit Tarzan übrigens auch recht einfach, ein Funktionscaching liegt dem Toolkit bereits bei. Achtung, das resultierende XML wird von Tarzan umgebaut! Das Ergebnis, das wir im Tutorial verwendet haben, findet sich bei Tarzan im body. Also anhand unseres Beispieles in $search->body.

Ansonsten ist alles gleich. Stellt sich nun natürlich die Frage, wo der Vorteil von Tarzan liegt. Amazon hat die dumme Angewohnheit, regelmäßig irgendwo irgendwas an den AWS zu ändern. Im Worst Case (und davor schreckt Amazon nicht im geringsten zurück) wird soviel geändert, dass eine bereits funktionierende Anwendung umgebaut werden muss. Wenn man aber eine Mid-Tier wie Tarzan verwendet muss man einfach das Toolkit austauschen, die Requests funktionieren nach wie vor, und die eigene Anwendung braucht nicht geändert zu werden. Das lästige Funktionscaching wird einem auch abgenommen, und eine vernünftige Fehlerbehandlung gibt es noch oben drauf.

Tarzan hilft uns aber leider nicht bei der Darstellung der Daten, hier muss weiterhin selbst Hand angelegt werden, aber mit dem Tutorial sollte dies eigentlich kein Problem darstellen.

Ähnliche Beiträge

PHP Fehlermeldungen in der Console PHP ist eine feine Sache, und "früher" konnter man sogar ordentlich was mit den Fehlermeldungen anfangen. Da gab es noch "einfaches" HTML, heutzutage ...
Die Wunderwelt von PHP und cURL PHP kann eine Menge, und eine Menge sogar doppelt bis dreifach. Das öffnen entfernter Dateien kann mittels "normalem" Dateihandling auch über die soge...
Chatbots in PHP mit BotMan Die größte Sau die in 2017 bisher durchs Dorf getrieben wird, ist der Chatbot. Ein zugegeben sehr komische Entwicklung denn die Bots gibt es schon ewi...
Auf die Dropbox mit PHP zugreifen Dropbox ist einer jener kleiner Helfer die in meinem Berufsalltag nicht mehr wegzudenken sind. Ich verwende es zum einen zum Syncen ganzer Dateistrukt...

Ein Kommentar

Schreibe einen Kommentar