Book Image

Hands-On RESTful Web Services with TypeScript 3

By : Biharck Muniz Araújo
5 (1)
Book Image

Hands-On RESTful Web Services with TypeScript 3

5 (1)
By: Biharck Muniz Araújo

Overview of this book

In the world of web development, leveraging data is the key to developing comprehensive applications, and RESTful APIs help you to achieve this systematically. This book will guide you in designing and developing web services with the power of TypeScript 3 and Node.js. You'll design REST APIs using best practices for request handling, validation, authentication, and authorization. You'll also understand how to enhance the capabilities of your APIs with ODMs, databases, models and views, as well as asynchronous callbacks. This book will guide you in securing your environment by testing your services and initiating test automation with different testing approaches. Furthermore, you'll get to grips with developing secure, testable, and more efficient code, and be able to scale and deploy TypeScript 3 and Node.js-powered RESTful APIs on cloud platforms such as the Google Cloud Platform. Finally, the book will help you explore microservices and give you an overview of what GraphQL can allow you to do. By the end of this book, you will be able to use RESTful web services to create your APIs for mobile and web apps and other platforms.
Table of Contents (20 chapters)
Free Chapter
1
Section 1: Unraveling API Design
5
Section 2: Developing RESTful Web Services
10
Section 3: Enhancing RESTful Web Services
15
Section 4: Extending the Capabilities of RESTful Web Services

Data serialization

If you walk through the npm repository, you might see a lot of packages that do data serialization. This section uses a library called js2xmlparser to show you various possibilities, such as providing a way to encode data—not only as JSON, but also as XML.

Remember that you can decide what flavor of framework you want to use.

To keep enriching our order-api application, imagine that you have a new request to provide support for XML encoding of request and response bodies as well. You may not want to duplicate the routes and controller; first, because it is not the best solution, and second, because you don't want to. One of the easiest ways to implement it is by using external packages such as js2xmlparser, as we mentioned previously.

To use js2xmlparser, install the package for it in the order-api application with the following command:

$ npm...