Door apps te maken waarbij je zowel een server-side component als een client-side component hebt, wordt het een beetje ingewikkelder dan alleen een server-side framework te hebben.
-
Wanneer u een client-side framework zoals AngularJS gebruikt, worden al uw sjablonen client-side gecompileerd, niet server-side. Dat is een enorm verschil met traditionele server-side rendering. Dat betekent dat u in plaats van gerenderde HTML naar de client te sturen, JSON zou verzenden. Uw server zou in wezen een RESTful API worden met beveiligingsemplacementen.
-
Ik ben niet erg bekend met AngularJS, meer met Ember, maar je zou in wezen een rustgevende service creëren:https:/ /gist.github.com/2432692 . Dat zou communiceren met de server op een REST-interface.
-
Op de server, met behulp van nodejs, zou je een ORM zoals Mongoose of iets dergelijks gebruiken. U kunt relaties, documenten, enz. maken... Eén opmerking, u moet uw modellen zowel op de server als op de client dupliceren.
-
MongoDB gebruikt bson, een binaire codering van een geserialiseerde JSON-tekenreeks/object. Omdat nodejs is gebouwd met behulp van de V8 JavaScript-engine, is JSON een natuurlijk objecttype en dus is het werken met MongoDB uiterst eenvoudig.
-
HTTP-server op NodeJS:NodeJS biedt een basisimplementatie voor een http-server. Het is niet veel, maar je kunt op verzoeken reageren en ze afhandelen. Er zijn geen sessie-, cookie-, auth-ondersteuning, dus u kunt ofwel
connect
. gebruiken die bovenop de traditionele http-server bouwt of ExpressJS gebruikt die voortbouwt op beideconnect
en de normalehttp
server die het knooppunt biedt. ExpressJS is uiterst eenvoudig om mee te beginnen en werkt goed met RESTful-backends.
Het is vrij eenvoudig. Download ExpressJS, maak een nieuwe app, stel alle client-side dingen (angularJS) en modulesystemen in als je AMD, CommonJS, Browserify, enz. gebruikt...