Book description
Explore the necessary concepts of REST API development by building few real world services from scratch.
About This Book
- Follow best practices and explore techniques such as clustering and caching to achieve a reactive, scalable web service
- Leverage the Buffalo Framework to quickly implement RESTful endpoints
- Learn to implement a client library for a RESTful web service using Go
Who This Book Is For
This book is intended for those who want to learn to build RESTful web services with a framework like Buffalo. To make best use of the code samples included in the book, you should have a basic knowledge of Go programming.
What You Will Learn
- Create HTTP handler and introspect the Gorilla Mux router
- OAuth 2 implementation with Go
- Build RESTFul API with go-restful, Revel.Go and Buffalo Go
- Create REST API with MongoDB and Go
- Build a working client library and unit test for REST API
- Debug, test, and profile RESTful APIs with each of the frameworks
- Optimize and scale REST API using microservices
In Detail
REST is an architectural style that tackles the challenges of building scalable web services and in today's connected world, APIs have taken a central role on the web. APIs provide the fabric through which systems interact, and REST has become synonymous with APIs. The depth, breadth, and ease of use of Go, makes it a breeze for developers to work with it to build robust Web APIs. This book takes you through the design of RESTful web services and leverages a framework like Buffalo Go to implement these services.
The book starts with a brief introduction to REST API development and how it transformed the modern web. You will learn how to handle routing and authentication of web services along with working with middleware for internal service. The book explains how to use Go frameworks to build RESTful web services and work with MongoDB to create REST API. You will learn how to integrate Postgres SQL and JSON with a Go web service and build a client library in Go for consuming REST API. You will learn how to scale APIs using the microservice architecture and deploy the REST APIs using Nginx as a proxy server. Finally you will learn how to metricize a REST API using an API Gateway.
By the end of the book you will be proficient in building RESTful APIs in Go.
Style and approach
This book is a step-by-step, hands-on guide to designing and building RESTful web services.
Explore the necessary concepts of REST API development by building few real world services from scratch.
About This Book
- Follow best practices and explore techniques such as clustering and caching to achieve a reactive, scalable web service
- Leverage the Gin Framework to quickly implement RESTful endpoints
- Learn to implement a client library for a RESTful web service using Go
Who This Book Is For
This book is intended for those who want to learn to build RESTful web services with a framework like Gin. To make best use of the code samples included in the book, you should have a basic knowledge of Go programming.
What You Will Learn
- Create HTTP handler and introspect the Gorilla Mux router
- OAuth 2 implementation with Go
- Build RESTFul API with Gin Framework
- Create REST API with MongoDB and Go
- Build a working client library and unit test for REST API
- Debug, test, and profile RESTful APIs with each of the frameworks
- Optimize and scale REST API using microservices
In Detail
REST is an architectural style that tackles the challenges of building scalable web services and in today's connected world, APIs have taken a central role on the web. APIs provide the fabric through which systems interact, and REST has become synonymous with APIs. The depth, breadth, and ease of use of Go, makes it a breeze for developers to work with it to build robust Web APIs. This book takes you through the design of RESTful web services and leverages a framework like Gin
to implement these services.
The book starts with a brief introduction to REST API development and how it transformed the modern web. You will learn how to handle routing and authentication of web services along with working with middleware for internal service. The book explains how to use Go frameworks to build RESTful web services and work with MongoDB to create REST API. You will learn how to integrate Postgres SQL and JSON with a Go web service and build a client library in Go for consuming REST API. You will learn how to scale APIs using the microservice architecture and deploy the REST APIs using Nginx as a proxy server. Finally you will learn how to metricize a REST API using an API Gateway.
By the end of the book you will be proficient in building RESTful APIs in Go.
Style and approach
This book is a step-by-step, hands-on guide to designing and building RESTful web services.
Publisher resources
Table of contents
- Preface
- Getting Started with REST API Development
- Handling Routing for Our REST Services
- Working with Middleware and RPC
- Simplifying RESTful Services with Popular Go Frameworks
- Working with MongoDB and Go to Create REST APIs
- Working with Protocol Buffers and GRPC
- Working with PostgreSQL, JSON, and Go
-
Building a REST API Client in Go and Unit Testing
- Getting the code
- Plan for building a REST API client
- Basics for writing a command-line tool in Go
- grequests – a REST API package for Go
- Getting comfortable with the GitHub REST API
- Creating a CLI tool as an API client for the GitHub REST API
- Using Redis for caching the API data
- Creating a unit testing tool for our URL shortening service
- Summary
- Scaling Our REST API Using Microservices
- Deploying Our REST services
- Using an API Gateway to Monitor and Metricize REST API
- Handling Authentication for Our REST Services
Product information
- Title: Building RESTful Web services with Go
- Author(s):
- Release date: December 2017
- Publisher(s): Packt Publishing
- ISBN: 9781788294287
You might also like
book
Go: Design Patterns for Real-World Projects
An insightful guide to learning the Go programming language About This Book Get insightful coverage of …
book
Go Programming Cookbook - Second Edition
Tackle the trickiest of problems in Go programming with this practical guide Key Features Develop applications …
book
The Go Workshop
Cut through the noise and get real results with a step-by-step approach to learning Go programming …
book
Hands-On System Programming with Go
Explore the fundamentals of systems programming starting from kernel API and filesystem to network programming and …