Pro REST API Development with Node.js. ([2015])
- Record Type:
- Book
- Title:
- Pro REST API Development with Node.js. ([2015])
- Main Title:
- Pro REST API Development with Node.js
- Further Information:
- Note: Fernando Doglio.
- Authors:
- Doglio, Fernando
- Contents:
- 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 --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. … (more)
- Publisher Details:
- California : Apress
- Publication Date:
- 2015
- Extent:
- 1 online resource
- Subjects:
- 005.3
Computer science
Application program interfaces (Computer software)
Application software -- Development
JavaScript (Computer program language)
Internet programming
COMPUTERS -- Internet -- Application Development
Application program interfaces (Computer software)
Application software -- Development
Internet programming
JavaScript (Computer program language)
Computer Science
Computer Science, general
Computers -- Software Development & Engineering -- General
Software Engineering
Computer programming
Software engineering
Computers -- Web -- Web Programming
Web programming
Electronic books - Languages:
- English
- ISBNs:
- 9781484209172
1484209176
1484209184
9781484209189 - Related ISBNs:
- 9781484209189
- Notes:
- Note: Vendor-supplied metadata.
- Access Rights:
- Legal Deposit; Only available on premises controlled by the deposit library and to one user at any one time; The Legal Deposit Libraries (Non-Print Works) Regulations (UK).
- Access Usage:
- Restricted: Printing from this resource is governed by The Legal Deposit Libraries (Non-Print Works) Regulations (UK) and UK copyright law currently in force.
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library HMNTS - ELD.DS.368789
- Ingest File:
- 01_349.xml