ASP.NET Web API 2: Building a REST Service from Start to Finish

The ASP.NET MVC Framework has always been a good platform on which to implement REST-based services, but the introduction of the ASP.NET Web API Framework raised the bar to a whole new level. Now in release version 2.1, the Web API Framework has evolved into a powerful and refreshingly usable platfo...

Full description

Bibliographic Details
Main Authors: Kurtz, Jamie. author (author), Wortman, Brian. author
Format: eBook
Language:Inglés
Published: Berkeley, CA : Apress 2014.
Edition:2nd ed. 2014.
Series:Expert's voice in ASP.NET.
Subjects:
See on Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009629398206719
Table of Contents:
  • Contents at a Glance; Introduction; Chapter 1: ASP.NET as a Service Framework; In the Land of JavaScript and Mobile Devices; Advantages of Using the ASP.NET Web API; Configuration; REST by Default; Abstraction with Routes; Controller Activation Is, Well, Very Nice; Simpler Extensible Processing Pipeline; Interoperability of JSON, XML, and REST; A Few Feature Highlights of the ASP.NET Web API; Summary; Chapter 2: What Is RESTful?; From RPC to REST; XML-RPC and SOAP; URIs and Resources; HTTP Verbs; HATEOAS; HTTP Status Codes; HAL, Collection+JSON, …; Summary
  • Chapter 3: Designing the Sample REST APITask Management Resource Types; Hypermedia Links; Modeling the URIs and HTTP Verbs; The Task-Management Data Model; Choosing Architecture Components; Data Access; Type Mapper; IoC Container; Logger; Testing Framework; Mocking Framework; Summary; Chapter 4: Building the Environment and Creating the Source Tree; Configuring the Machine; Windows 8 64-bit with .NET Framework 4.51; SQL Server 2012; Visual Studio 2013; NuGet Package Manager 2.6; Creating the Folder Structure; Creating the Solution; NuGet Config File; Adding the Projects; Basic Components
  • Domain ModelService Model Types; Logging; The Database; Summary; Chapter 5: Up and Down the Stack with a POST; Routing; Adding an HttpRequestMessage Argument; Adding a Model Object Argument; Attribute-Based Routing; Versioning; Implementing POST; A Custom IHttpRouteConstraint; A Custom RoutePrefixAttribute; A Custom IHttpControllerSelector; Configuration; The Demo; Dependencies; Constructor Injection of Dependencies; Configuring Ninject Dependency Injection; Container Configuration; Container Bindings; IDependencyResolver for Ninject; Completing NinjectWebCommon
  • NHibernate Configuration and MappingsDatabase Configuration: Overview; Adding Concurrency Support to Entities; Entity Mapping; Mapping Relationships; Database Configuration: Bringing It All Together; Managing the Unit of Work; Database Transaction Control; Diagnostic Tracing; Error Handling; Persisting a Task and Returning IHttpActionResult; New Service Model Type; Persisting the Task; IHttpActionResult; Summary; Chapter 6: Securing the Service; The Main Idea; Authentication; Authorization; Overview of the Authentication and Authorization Process; Securing the POST; The Authorization Filter
  • A Message Handler to Support HTTP Basic AuthenticationSecuring Non-Resource API Operations; Activate a Task; Complete a Task; Reactivate a Task; Auditing; GET a Task; Applying Token-Based Security; Token Basics; The JSON Web Token; Configuring the JwtAuthForWebAPI Package; Getting a Task Using a JWT; SSL, XSS, CORS, and CSRF; Summary; Chapter 7: Dealing with Relationships, Partial Updates, and Other Complexities; Task and User Relationships; Partial Update of a Task Using PUT/PATCH; Validation Using an Action Filter; Specialized Action Filter to Validate Task Updates
  • Generalized Action Filter to Validate New Tasks