Essentials of Back-End Development: From APIs to Databases
Client Side and Server Side Scripting: Explanation
Integrating Node APIs with Angular
Angular is an open-source application development framework that is used to design and implement both mobile as well as a desktop application. The framework is built using TypeScript. There are many users who tend to use Angular & AngularJS interchangeably. Although they are correlated to each other; Angular is not congruent to AngularJS as the latter is primarily a JavaScript framework that is used specifically for front-end development. Therefore, AngularJS is fundamentally a client-side technology.
Now, coming to Node (interchangeably called NodeJS); although Node and NodeJS may not be exactly the same thing; but they are related to each other. In the context of application development & programming; NodeJS is analogous to Node.
1. Need of Integrating the two – Node & Angular
Before coming to the technical nitty-gritty of integration of the two frameworks; it is important to understand the ‘why?’ aspect – i.e. the need of integrating the two. As hinted in the prior section, AngularJS is a client-side JavaScript technology that runs on client systems. Now, there may be requirements wherein certain JavaScript validation may be required to be executed on the server-side. This is where NodeJS comes into play; it’s an open-source server environment JavaScript framework that executes on the server platform.
2. Integrating Node APIs to AngularJS – MEAN Stack
The combination of AngularJS and NodeJS forms an integral part of the MEAN stack which is considered to be the most preferred combination of technology for application development. The various components of MEAN comprise –
M (MongoDB) – Refers to the backend support in an application & transferring data from server to client
E (ExpressJS) – Preferred web development framework (using Ruby) used to design applications on Node
A (AngularJS) – JavaScript framework used for front-end development
N (NodeJS) – JavaScript framework for server-side execution
As shown in the figure; the integration of the different frameworks caters to the end-to-end procedure starting from the client generating a request on the AngularJS platform which is then transferred to the NodeJS framework (running on the server end). Based on the request sent in by the client; the server talks with the database via the Express JS framework; and then returns the required result to the NodeJS; which is then forwarded to the client via the AngularJS front-end application running on the client environment. The subsequent section would showcase an example of how Node APIs can be integrated with the Angular JS framework
3. Practical integration – Node APIs with Angular
Before kick-starting the design of the application, it is important to first complete the prerequisites; related to the installation of the required packages. In order to reference the Node APIs, the developer needs to first install the NodeJS packages (as shown below).
‘NPM’ is the acronym for ‘Node Package Manager’ – and installs all the libraries and APIs under NodeJS into the current application. Once this is done, the next step is to configure the backend (MongoDB).
Once this is done; the related Node APIs would be available to be used in the AngularJS application. In case the developer intends to check the integration of the two; they can simply check the folder structure, wherein the ‘public’ folder would have all dependencies related to the AngularJS front, and the ‘server’ folder would include all related libraries and files pertaining to NodeJS framework.