Node.js & Ruby SDKs veröffentlicht

Autor: Patrick Michelberger

Ab sofort ermöglichen wir die Erstellung von Open Commerce-Applikationen mit den beliebten Programmiersprachen JavaScript und Ruby.

Bei der Entwicklung der SDKs war uns vor allem eine konsistente Dokumentation und Aufruf-Logik wichtig. Wir standen vor der Herausforderung, sprachspezifische Besonderheiten von Ruby und Node.js mit der Struktur der bestehenden PHP & Python SDKs in Einklang zu bringen. Das Ergebnis unserer zweiwöchigen Entwicklungsphase wollen wir Euch nun gerne präsentieren.

ABOUT NODE.JS

Das SDK kann über den Packet-Manager npm installiert werden. Ausführliche Installationshinweise findest Du in unserer Dokumentation.

Im Gegensatz zu unseren anderen SDKs verfolgt das Node.js SDK ein asynchrones Design-Muster. Jede Funktion erwartet als letzten Parameter eine Callback-Funktion, die das Programm über den Erfolg oder Misserfolg der API-Antwort informiert. Desweiteren unterstützen wir Promises für Funktions-Verkettungen. Eine Abfrage nach dem Kategoriebaum im Callback-Stil kann folgendermaßen durchgeführt werden:

Um eine Pyramid of Doom zu vermeiden, kannst Du alternativ jede Funktion über eine Promise-Syntax aufrufen:

Bei den Methoden fetchProductsByIds(ids[,fields][,cb]) & fetchProductsByEans(ids,[,fields][,cb]) kannst Du über den optionalen Parameter fields zusätzliche Produktinformationen anfordern. Standardmäßig erhältst Du den Namen und die ID des Produkts.

Du kannst ähnlich zu unserem PHP-SDK die Produktfelder über das Feld productsFields des ABOUT YOU Objekts ay abrufen.

Um zum Beispiel die Marke des Produkts zu erhalten, kannst Du entweder die Eigenschaft ay.productsFields.BRAND oder, wie in anderen Javascript-SDKs üblich, direkt den String-Wert 'brand_id' angeben. Produktfelder Übersicht

ABOUT RUBY

Das Ruby-SDK orientiert sich stark am PHP-SDK, das heißt dass Funktionen in der Regel gleich lauten, die selben Parameter erwarten und Du Dir sicher sein kannst, dass Du bei jedem Funktionsaufruf ähnliche Ergebnisse erzielst. Falls Du also schon mit dem PHP-SDK vertraut bist, probier doch mal das Ruby-SDK aus. Und falls nicht, kannst Du es trotzdem sehr einfach ausprobieren. Installiere Dir Ruby und RubyGems. Gib dann folgenden Code in die Kommandozeile deines Betriebssystems ein:

Jetzt solltest Du noch einen Webserver auswählen um deine Ergebnisse auch gleich im Browser zu bewundern. Falls Du Dir unsicher bist, welchen Webserver du nutzen solltest, probier doch mal Sinatra. Es ist schnell installiert und Du kannst direkt loslegen. Lass uns nun zusammen eine einfache Produktsuche mit Sinatra erstellen. Lege Dir zuerst eine Ruby-Datei an, in die Du den folgenden Inhalt schreibst:

Diese Datei legt das Routing von Sinatra fest. Standartmäig läuft Sinatra unter localhost:4567. Diese Information in Kombination mit der Routing-Datei ergibt folgendes Schema für unsere Produktsuche: Ein Aufruf von localhost:4567/productSearch rendert die eRuby-Datei "productSearch". Diese müssen wir nun anlegen. Lege also eine Datei mit der Endung .erb an, in die Du den folgenden Inhalt einfügst:

Nun müssen wir diese Datei in einen Ordner Views verschieben. Dieser Ordner muss sich auf der gleichen Ebene wie die routing.rb befinden.
Hast Du dies getan, können wir uns das Ergebnis anschauen. Wenn alles nach Plan gelaufen ist, siehst Du nun eine Liste aus Produkt-ID-Produkt-Name-Paaren.
Herzlichen Glückwunsch! Jetzt hast Du deine erste kleine Webapp mit hilfe des Ruby-SDKs erstellt. Wenn Du dich jetzt über weitere Funktionalitäten des SDKs informieren möchtest, schau doch mal in unserer Dokumentation vorbei. Wir haben sie schon für die neuen SDKs geupdated!

Beide SDK befinden sich momentan noch in einem sehr frühen Stadium, wir freuen uns daher besonders über Verbesserungsvorschläge und Anregungen.

Die Repositories findest du auf Github.