201310Sep

Webshell: Web-APIs einfach verwenden und kombinieren

Die Arbeit mit verschiedenen Web-APIs, also öffentliche Schnittstellen zu Google Maps, Facebook, Spotify, Soundcloud, uvm., gestaltet sich nicht immer einfach, da unterschiedliche Konventionen eingehalten werden müssen, verschiedene Datenformate vorliegen können oder Abhängigkeiten beachtet werden müssen. Besonders wenn verschiedene APIs in einer Webapp kombiniert werden sollen, kann es etwas länger dauern, bis die entsprechende Dokumentation analysiert wurde.
Abhilfe will hier das Projekt Webshell schaffen, das sich als "API für APIs" versteht: Es handelt sich um einen Gateway, der HTTP-API-Requests über eine JavaScript-Bibliothek vereinfacht. Die Web-APIs werden also nicht mehr direkt aufgerufen, sondern über den Webshell-Layer (ein Node.js-Server) angesteuert.

Webshell - The API Combinator

Webshell vereinheitlicht die API-Endpoints in ein REST/JSON-Format und stellt sie als JavaScript-Objekte zur Verfügung. Dadurch ist die Kombination mehrerer APIs denkbar einfach:

  • var m = apis.google.maps({height: "215px"})
  • m.center("San francisco")
  • m.addMarker({
  • address: "Cityhall, San Francisco, CA",
  • icon: apis.gravatar("team@webshell.io", {view: null})
  • });

Hier wurde also ein Gravatar-Bild in einem Google Maps-Widget integriert. Der Webshell API Explorer zeigt die bisher unterstützten APIs. Für die Verwendung der Webshell wird lediglich ein GitHub-Konto benötigt. Die Dokumentation gibt Aufschluss über weitere Details des Projekts.