The native web app we developed in the previous chapters was working fine, yet it lacked some important and rather advanced features that had to be implemented as well in order to use it in a production-ready application such as the one we're aiming to build. In this chapter, we took care of some of them, such as token expiration, new user registration, and third-party authentication.
Fulfilling the first task took a reasonable amount of time, as we had to perform some relevant changes within every part of our app: the server-side and the client-side, not to mention the data model. We had to create a whole new table, expand our current Web API classes--the TokenController and TokenResponseViewModel--and add another Angular HttpInterceptor class--similar to the one we already used in Chapter 8 to interact with our HTTP requests--to deal with the HTTP responses and...