Book Image

Building Web Apps with Spring 5 and Angular

By : Ajitesh Kumar Shukla
Book Image

Building Web Apps with Spring 5 and Angular

By: Ajitesh Kumar Shukla

Overview of this book

Spring is the most popular application development framework being adopted by millions of developers around the world to create high performing, easily testable, reusable code. Its lightweight nature and extensibility helps you write robust and highly-scalable server-side web applications. Coupled with the power and efficiency of Angular, creating web applications has never been easier. If you want build end-to-end modern web application using Spring and Angular, then this book is for you. The book directly heads to show you how to create the backend with Spring, showing you how to configure the Spring MVC and handle Web requests. It will take you through the key aspects such as building REST API endpoints, using Hibernate, working with Junit 5 etc. Once you have secured and tested the backend, we will go ahead and start working on the front end with Angular. You will learn about fundamentals of Angular and Typescript and create an SPA using components, routing etc. Finally, you will see how to integrate both the applications with REST protocol and deploy the application using tools such as Jenkins and Docker.
Table of Contents (18 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Handling the login authentication


In this section, you will learn about how to use Spring Security for login-based authentication based on the following authentication process related to the Angular app and Spring app running on different servers:

  1. The user visits the login page which is part of Angular app. The login page is delivered from the Angular app. Token is grabbed from the server and sent back to the client, and the server expects the same token in each subsequent requests. This token will be added to the header of the subsequent login request submission.
  2. On submission of login form details such as username and password, an appropriate Spring Web API such as /account/login is invoked through the HTTP service POST method. The following code represents the Angular code for the login. Pay attention to how the HTTP service is used to invoke Spring RESTful login APIs. Make a note of the withCredentials: true option being set as part of RequestOptions.  The XMLHttpRequest.withCredentials...