Cargando…

Pro REST API Development with Node.js /

Pro REST API Development with Node.js is your guide to managing and understanding the full capabilities of successful REST development. API design is a hot topic in the programming world, but not many resources exist for developers to really understand how you can leverage the advantages. This book...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Doglio, Fernando (Autor)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: [California] : Apress, [2015]
Colección:Expert's voice in Web development.
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)
Tabla de Contenidos:
  • Introduction
  • Acknowledgments
  • About the Author
  • Contents
  • Chapter 1: Rest 101
  • Where Did It All Start?
  • REST Constraints
  • Client-Server
  • Stateless
  • Cacheable
  • Uniform Interface
  • Layered System
  • Code-on-Demand
  • Resources, Resources, Resources
  • Representations
  • Content Negotiation
  • Using File Extensions
  • Resource Identifier
  • Actions
  • Complex Actions
  • Hypermedia in the Response and Main Entry Point
  • A Few Notes on HAL
  • Status Codes
  • REST vs. the Past
  • Summary
  • Chapter 2: API Design Best Practices
  • What Defines a Good API?
  • Developer Friendly
  • Communication's Protocol
  • Easy-to-Remember Access Points
  • Uniform Interface
  • Transport Language
  • Why JSON?
  • Extensibility
  • How Is Extensibility Managed?
  • Up-to-Date Documentation
  • Proper Error Handling
  • Phase 1: Development of the Client
  • Phase 2: The Client Is Implemented and Being Used by End Users
  • Multiple SDK/Libraries
  • Security
  • Accessing the System
  • Almost Stateless Methods
  • Basic Auth with TSL
  • Digest Auth
  • OAuth 1.0a
  • OAuth 2.0
  • A Stateless Alternative
  • Scalability
  • Summary
  • Chapter 3: Node.js and REST
  • Asynchronous Programming
  • Async Advanced
  • Parallel Flow
  • Serial Flow
  • Asynchronous I/O
  • Async I/O vs. Sync I/O
  • Simplicity
  • Dynamic Typing
  • Object-Oriented Programming Simplified
  • Prototypal Inheritance
  • Functional Programming Support
  • Duck Typing
  • Native Support for JSON
  • npm: The Node Package Manager
  • Who's Using Node.js?
  • Summary
  • Chapter 4: Architecting a REST API
  • The Request Handler, the Pre-Process Chain, and the Routes Handler
  • MVC: a.k.a. Model-View-Controller
  • Alternatives to MVC
  • Hierarchical MVC
  • Model-View-ViewModel
  • Model-View-Adapter
  • Response Handler
  • Summary
  • Chapter 5: Working with Modules
  • Our Alternatives.
  • Request/Response Handling
  • Routes Handling
  • Middleware
  • Up-to-Date Documentation
  • Hypermedia on the Response
  • Response and Request validation
  • The List of Modules
  • HAPI
  • Code Examples
  • Express.js
  • Code Examples
  • Restify
  • Code Examples
  • Naming Routes
  • Versioning Routes
  • Content Negotiation
  • Vatican.js
  • Code Examples
  • swagger-node-express
  • Code Examples
  • I/ODocs
  • Code Examples
  • Halson
  • Code Examples
  • HAL
  • Code Examples
  • JSON-Gate
  • Code Examples
  • TV4
  • Code Examples
  • Summary
  • Chapter 6: Planning Your REST API
  • The Problem
  • The Specifications
  • Keeping Track of Stock per Store
  • UML Diagram
  • Choosing a Database Storage System
  • Fast Integration
  • Easy-to-Change Schemas
  • Ability to Handle Entity Relations
  • Seamless Integration Between Our Models and the Database Entities
  • And the Winner Is ...
  • Choosing the Right Modules for the Job
  • Summary
  • Chapter 7: Developing Your REST API
  • Minor Changes to the Plan
  • Simplification of the Store: Employee Relationship
  • Adding Swagger UI
  • Simplified Security
  • A Small Backdoor for Swagger
  • MVC
  • Folder Structure
  • The Source Code
  • controllers
  • lib
  • models
  • request_schemas
  • schemas
  • swagger-ui
  • Root Folder
  • Middleware Setup
  • Setup Section
  • Summary
  • Chapter 8: Troubleshooting
  • Asynchronous Programming
  • The Controllers Action's Code
  • The Middleware Functions
  • Issues Configuring the Swagger UI
  • CORS: a.k.a. Cross-Origin Resource Sharing
  • Data Types
  • Summary
  • Index.