2014-02-16 11 views
5

Ich untersuche Sailsjs für die serverseitige Verarbeitung und Validierung und eckig auf der Client-Seite. Anscheinend unterstützt BreezeJS Odata und WebApi für die Interaktion mit der Datenquelle. Ich weiß, dass Sails eine REST Api out of the box bietet.So verkabeln Sie SailsJS mit BreezeJS

Wie würde ich Sails einrichten, um OData oder WebApi für die Konnektivität von Breeze bereitzustellen?

Gibt es noch eine andere bekannte Möglichkeit, Sails mit Angular zu verbinden, die die Möglichkeit bietet, Abfragen auf der Clientseite zu generieren, die dann auf dem Server ausgeführt werden? (Mein Anwendungsfall ist das Filtern großer Datasets und die Bearbeitung des Ergebnisses auf dem Client vor dem Batch-Update der Datenquelle.)

Vielen Dank!

Antwort

1

Welche Datenbank und/oder ORM verwenden Sie? Dies wirkt sich auf die Antwort aus, da die OData-Abfrage in die entsprechende Abfrage für Ihre ORM/Datenbank umgewandelt werden muss. Eine der folgenden könnte für Sie arbeiten:

  • Die breeze.server.node Repo enthält einen OData-Parser, der OData URLs in Expressions Bäume verwandelt. Dann gibt es Adapter, die diese Ausdrucksbäume in MongoDB queries oder Sequelize queries verwandeln. Wenn Sie MongoDB oder Sequelize verwenden, könnte dies das sein, was Sie brauchen. Sie können einen eigenen Adapter für schreiben, falls noch keiner existiert.

  • Das Repo breeze.js.labs enthält breeze.ajaxrestinterceptor.js, die Breeze OData URLs in REST-style Ressource URLs konvertiert. Es unterstützt nur eine Teilmenge der möglichen URLs und muss an Ihre eigenen API-Konventionen angepasst werden.

  • Eine kommende Breeze-Version wird eine Alternative zu OData bieten: eine Abfragesprache für alle JSON-Sprachen, die von den Abfragesprachen MongoDB und Sequelize inspiriert ist. Dies wird es einfacher machen, Ihr eigenes Backend zu schreiben und in Zukunft Sails/zu unterstützen.

+0

Wasserlinie ist es. Ich freue mich auf die zukünftige Unterstützung, die Sie erwähnt haben. – danba