Book Image

Building Applications with Scala

By : Diego Pacheco
Book Image

Building Applications with Scala

By: Diego Pacheco

Overview of this book

<p>Scala is known for incorporating both object-oriented and functional programming into a concise and extremely powerful package. However, creating an app in Scala can get a little tricky because of the complexity the language has. This book will help you dive straight into app development by creating a real, reactive, and functional application. We will provide you with practical examples and instructions using a hands-on approach that will give you a firm grounding in reactive functional principles.</p> <p>The book will take you through all the fundamentals of app development within Scala as you build an application piece by piece. We’ve made sure to incorporate everything you need from setting up to building reports and scaling architecture. This book also covers the most useful tools available in the Scala ecosystem, such as Slick, Play, and Akka, and a whole lot more. It will help you unlock the secrets of building your own up-to-date Scala application while maximizing performance and scalability.</p>
Table of Contents (17 chapters)
Building Applications with Scala
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Preface

REST API design


When you are working with REST, there are some principles that you should keep in mind, and these principles should provide guidance for your design choices when you are doing API design.

HTTP verbs design

These are the following verbs found in HTTP:

  • GET: This is often used to answer queries

  • PUT: This is often used to insert data

  • POST: This is often used to update data

  • DELETE: This is often used to remove data

Why do we keep saying often? Well, there are some exceptions in regards of size limitations. For instance, for the GET verb, we can't have a request bigger than 8192 bytes or 8 KB. If you need to send a bigger payload, we will need to use the POST verb.

Uniform API

REST uses a uniform API. For example, consider the following piece of code:

    GET          /users/1   = List information about user id 1 
    PUT          /users/1   = Insert user 1 
    POST         /users/1   = Update user 1 
    DELETE       /users/1   =  Delete user 1 
    GET        ...