Building RESTful Web services with Go: Learn how to build powerful RESTful APIs with Golang that scale gracefully

Naren Yellavula

  • 出版商: Packt Publishing
  • 出版日期: 2017-12-29
  • 售價: $1,860
  • 貴賓價: 9.5$1,767
  • 語言: 英文
  • 頁數: 316
  • 裝訂: Paperback
  • ISBN: 1788294289
  • ISBN-13: 9781788294287
  • 相關分類: Web API
  • 下單後立即進貨 (約3~4週)

商品描述

Explore the necessary concepts of REST API development by building few real world services from scratch.

Key Features

  • 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

Book Description

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.

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

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.

Table of Contents

  1. Getting started with the REST API development
  2. Handling Routing for our REST services
  3. Working with Middleware & RPC
  4. Simplifying RESTFul Services with popular Go frameworks
  5. Working with MongoDB and Go to create REST API
  6. Working with Protocol Buffers
  7. Working with PostgreSQL, JSON and Go
  8. Building a REST API client in Go & Unit testing API
  9. Scaling our REST API using MicroServices
  10. Deploying our REST services
  11. Using an API Gateway to monitor and metricize REST API
  12. Handling Authentication for our REST Services

商品描述(中文翻譯)

探索從頭開始建立幾個真實世界服務的 REST API 開發必要概念。

主要特點:
- 遵循最佳實踐,探索如集群和緩存等技術以實現反應式、可擴展的 Web 服務
- 利用 Buffalo 框架快速實現 RESTful 端點
- 學習使用 Go 實現 RESTful Web 服務的客戶端庫

書籍描述:
REST 是一種解決構建可擴展 Web 服務的挑戰的架構風格,在當今互聯世界中,API 在 Web 上扮演著核心角色。API 提供系統互動的基礎,而 REST 已成為 API 的代名詞。Go 的深度、廣度和易用性使開發人員能夠輕鬆地使用它來構建強大的 Web API。本書將帶領您深入了解 RESTful Web 服務的設計,並利用 Buffalo Go 等框架來實現這些服務。

本書首先簡要介紹了 REST API 開發以及它如何改變現代 Web。您將學習如何處理 Web 服務的路由和身份驗證,以及如何使用中間件處理內部服務。本書解釋了如何使用 Go 框架構建 RESTful Web 服務,並使用 MongoDB 創建 REST API。您將學習如何將 Postgres SQL 和 JSON 整合到 Go Web 服務中,並使用 Go 構建用於消耗 REST API 的客戶端庫。您將學習如何使用微服務架構來擴展 API,並使用 Nginx 作為代理服務器部署 REST API。最後,您將學習如何使用 API Gateway 對 REST API 進行度量。

通過本書,您將能夠熟練地使用 Go 構建 RESTful API。

您將學到:
- 創建 HTTP 處理程序並檢查 Gorilla Mux 路由器
- 使用 Go 實現 OAuth 2
- 使用 go-restful、Revel.Go 和 Buffalo Go 構建 RESTful API
- 使用 MongoDB 和 Go 創建 REST API
- 構建工作中的客戶端庫並對 REST API 進行單元測試
- 使用每個框架進行調試、測試和分析 RESTful API
- 使用微服務優化和擴展 REST API

本書適合對使用 Buffalo 等框架構建 RESTful Web 服務感興趣的讀者。為了更好地使用書中包含的代碼示例,您應該具備基本的 Go 編程知識。

目錄:
1. 開始 REST API 開發
2. 處理 REST 服務的路由
3. 使用中間件和 RPC
4. 使用流行的 Go 框架簡化 RESTful 服務
5. 使用 MongoDB 和 Go 創建 REST API
6. 使用 Protocol Buffers
7. 使用 PostgreSQL、JSON 和 Go
8. 使用 Go 構建 REST API 客戶端和單元測試
9. 使用微服務擴展 REST API
10. 部署 REST 服務
11. 使用 API Gateway 監控和度量 REST API
12. 處理 REST 服務的身份驗證