What you will learn in this course
The world of software development has been changing over the years. Less and less software is built as monolithic applications. With the rise of both the cloud and smart devices software applications are becoming more and more distributed. Distributed environments need to be built using standards and there is no standard more common than the HTTP protocol which is the foundation of the World Wide Web. REST services are built on top of the HTTP standard making it a first class choice for interoperable services.
The Essential REST course teaches how to develop and consume RESTful services. During this course you will learn the principals and best practices for developing REST services and why you might want to use RESTful services instead of SOAP services. The course teaches building REST services using the Microsoft ASP.NET Web API framework.
Some of the reasons REST services are becoming more popular:
Build on top of the standard and proven HTTP protocol.
Broad reach as every programming stack, from smart phone to mainframe, has support for HTTP.
Clients can request XML, JSON, or a different format depending on their capabilities and preferences.
HTTP caching as well as stateless services result in a very scalable architecture.
Uses proven for HTTP security confidentiality and authentication.
- Gain understanding of the strengths and weaknesses of REST services and architecture.
- Understand how the HTTP standard is used in REST services.
- Discover which services are best suited as RESTful services and which are better implemented as SOAP services.
- Learn how to implement REST services using the Microsoft ASP.NET Web API framework.
- Learn how to consume REST services, both in smart clients as well as browser based clients.
Course outline and topics
- What are REST Services
- Hypertext Transfer Protocol
- Why and When to use REST Service
- REST versus SOAP Services
- The ASP.NET Web API Framework
Uniform Resource Locators
HTTP Status Codes
Accept Header & Content Negotiation
Building and Using MediaTypeFormatters
Browsers aren't always as smart as they should be
They claim they can accept any resource
Use templates or data binding to display data
Browsers can be over aggressive with caching
Browsers are build around the HTML spec and don't support all HTTP features
The Problem with Simple REST Services
OData & AtomPub
Securing REST Services
- HTTP Security
- Basic Authentication
- Forms Authentication
- Integrated Authentication
- Token-based Security
- OAuth & OAuth2
- Amazon's S3 Authentication
- Federated Security
- Filtering Data
- HTTP Caching