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

1
2
3
4
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

Besseres Debugging in PHP Debugging in PHP ist das größte Arschloch von allen nicht schön. Wohl dem, der einigen Aufwand betrieben hat, um XDebug an den Start zu kriegen. Aber ...
Tutorial Amazon Web Services mit PHP – I ... Die Amazon Web Services sind recht nett, wenn man einfach und schnell Content auf seine eigenen Seiten bringen möchte. Dabei geht es noch nicht einmal...
Test-Driven Development mit PHP Mit phpUnit gibt es bereits seit Jahren eine Methode zur testgetriebenen Entwicklung in PHP. Gerade bei der agilen Software-Entwicklung ist diese Meth...
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...

Eine Antwort auf „Amazon Web Services mit Tarzan für PHP“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.