SlideShare ist ein Scribd-Unternehmen logo
1 von 103
Web API HTTP Pipeline




     Learn More @ http://www.learnnowonline.com
        Copyright © by Application Developers Training Company
Objectives




       Learn More @ http://www.learnnowonline.com
          Copyright © by Application Developers Training Company
Objectives
• Understand the client-side and server-
  side pipelines




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Objectives
• Understand the client-side and server-
  side pipelines
• Send the best HTTP responses for Web
  API operations




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Objectives
• Understand the client-side and server-
  side pipelines
• Send the best HTTP responses for Web
  API operations
• Use the HTTP pipeline objects to
  handle exceptions




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Objectives
• Understand the client-side and server-
  side pipelines
• Send the best HTTP responses for Web
  API operations
• Use the HTTP pipeline objects to
  handle exceptions
• Write your own custom handlers for
  Web API requests

         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline
• Server-Side Pipeline




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling
•   Custom Handlers


          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Pipeline Elements




       Learn More @ http://www.learnnowonline.com
          Copyright © by Application Developers Training Company
Pipeline Elements
• Request/Response models have
  pipelines




        Learn More @ http://www.learnnowonline.com
           Copyright © by Application Developers Training Company
Pipeline Elements
• Request/Response models have
  pipelines
• Composed of sequential events that
  fire




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Pipeline Elements
• Request/Response models have
  pipelines
• Composed of sequential events that
  fire
• Uses specific objects




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Pipeline Elements
• Request/Response models have
  pipelines
• Composed of sequential events that
  fire
• Uses specific objects
• Web API has client and server-side
  pipelines


         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
HttpRequestMessage




      Learn More @ http://www.learnnowonline.com
         Copyright © by Application Developers Training Company
HttpRequestMessage
• Represents all the info about the HTTP
  request




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
HttpRequestMessage
• Represents all the info about the HTTP
  request
  • URL




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
HttpRequestMessage
• Represents all the info about the HTTP
  request
  • URL
  • HTTP method




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
HttpRequestMessage
• Represents all the info about the HTTP
  request
  • URL
  • HTTP method
  • Headers




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
HttpResponseMessage




      Learn More @ http://www.learnnowonline.com
         Copyright © by Application Developers Training Company
HttpResponseMessage
• Represents all the info about the HTTP
  response




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
HttpResponseMessage
• Represents all the info about the HTTP
  response
  • Status code




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
HttpResponseMessage
• Represents all the info about the HTTP
  response
  • Status code
  • Success flag




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
HttpResponseMessage
• Represents all the info about the HTTP
  response
  • Status code
  • Success flag
  • Original HTTP request




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
HttpMessageHandler




      Learn More @ http://www.learnnowonline.com
         Copyright © by Application Developers Training Company
HttpMessageHandler
• Base class implemented by other
  objects




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
HttpMessageHandler
• Base class implemented by other
  objects
• Most custom processing code goes
  here




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
HttpMessageHandler
• Base class implemented by other
  objects
• Most custom processing code goes
  here
• Able to write custom handlers and put
  them in the pipeline



         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline
• Server-Side Pipeline




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling
•   Custom Handlers


          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Client-Side Pipeline




        Learn More @ http://www.learnnowonline.com
           Copyright © by Application Developers Training Company
Client-Side Pipeline
• HttpClient sends requests




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Client-Side Pipeline
• HttpClient sends requests
• Request is an HttpRequestMessage




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Client-Side Pipeline
• HttpClient sends requests
• Request is an HttpRequestMessage
• Request is sent to HttpMessageHandler




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Client-Side Pipeline
•   HttpClient sends requests
•   Request is an HttpRequestMessage
•   Request is sent to HttpMessageHandler
•   HttpMessageHandler returns
    HttpResponseMessage




           Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company
Client-Side Pipeline
• HttpClient sends requests
• Request is an HttpRequestMessage
• Request is sent to HttpMessageHandler
• HttpMessageHandler returns
  HttpResponseMessage
• Default handler is HttpClientHandler



         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Client-Side Pipeline




        Learn More @ http://www.learnnowonline.com
           Copyright © by Application Developers Training Company
Agenda




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline
• Server-Side Pipeline




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling
•   Custom Handlers


          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Server-Side Pipeline




        Learn More @ http://www.learnnowonline.com
           Copyright © by Application Developers Training Company
Server-Side Pipeline
• Web host gives the request to
  HttpServer




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Server-Side Pipeline
• Web host gives the request to
  HttpServer
• Request passed through series of
  HttpMessageHandlers




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Server-Side Pipeline
• Web host gives the request to
  HttpServer
• Request passed through series of
  HttpMessageHandlers
• Ends with HttpControllerDispatcher




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Server-Side Pipeline
• Web host gives the request to
  HttpServer
• Request passed through series of
  HttpMessageHandlers
• Ends with HttpControllerDispatcher
• Dispatcher sends request to
  appropriate Controller which sends


         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline
• Server-Side Pipeline




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling
•   Custom Handlers


          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Improving CRUD Responses




      Learn More @ http://www.learnnowonline.com
         Copyright © by Application Developers Training Company
Improving CRUD Responses
• By default, Web API always sends same
  HTTP response code




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Improving CRUD Responses
• By default, Web API always sends same
  HTTP response code
• Can alter the response to include more
  accurate info




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Improving CRUD Responses




      Learn More @ http://www.learnnowonline.com
         Copyright © by Application Developers Training Company
Improving CRUD Responses
Let’s improve a Web API service’s HTTP
responses!




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline
• Server-Side Pipeline




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling
•   Custom Handlers


          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Exception Handling




       Learn More @ http://www.learnnowonline.com
          Copyright © by Application Developers Training Company
Exception Handling
• Exceptions tend to be vague on client




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Exception Handling
• Exceptions tend to be vague on client
• HttpResponseException




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Exception Handling
• Exceptions tend to be vague on client
• HttpResponseException
• Can use filters to assign HTTP
  responses




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Exception Handling




       Learn More @ http://www.learnnowonline.com
          Copyright © by Application Developers Training Company
Exception Handling
Let’s set up an automated way to send
better error messages to the client




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
• Pipeline Elements
• Client-Side Pipeline
• Server-Side Pipeline




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling




          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Agenda
•   Pipeline Elements
•   Client-Side Pipeline
•   Server-Side Pipeline
•   Improving CRUD Responses
•   Exception Handling
•   Custom Handlers


          Learn More @ http://www.learnnowonline.com
             Copyright © by Application Developers Training Company
Custom Handlers




      Learn More @ http://www.learnnowonline.com
         Copyright © by Application Developers Training Company
Custom Handlers
• Inherit DelegatingHandler




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Custom Handlers
• Inherit DelegatingHandler
• Custom code to perform any kind of
  per request functionality




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Custom Handlers
• Inherit DelegatingHandler
• Custom code to perform any kind of
  per request functionality
  • Logging




         Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company
Custom Handlers
• Inherit DelegatingHandler
• Custom code to perform any kind of
  per request functionality
  • Logging
  • Security




          Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Custom Handlers
• Inherit DelegatingHandler
• Custom code to perform any kind of
  per request functionality
  • Logging
  • Security
  • Handling certain kinds of requests




          Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Custom Handlers




      Learn More @ http://www.learnnowonline.com
         Copyright © by Application Developers Training Company
Custom Handlers
We’ll add some security to a Web API
service




         Learn More @ http://www.learnnowonline.com
            Copyright © by Application Developers Training Company
Learn More!




       Learn More @ http://www.learnnowonline.com
          Copyright © by Application Developers Training Company
Learn More!
• This is an excerpt from a larger course. Visit
  www.learnnowonline.com for the full details!




           Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company
Learn More!
• This is an excerpt from a larger course. Visit
  www.learnnowonline.com for the full details!




           Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company
Learn More!
• This is an excerpt from a larger course. Visit
  www.learnnowonline.com for the full details!


• Learn more about Web API on SlideShare:




           Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company
Learn More!
• This is an excerpt from a larger course. Visit
  www.learnnowonline.com for the full details!


• Learn more about Web API on SlideShare:
   Web API Basics




           Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company

Weitere ähnliche Inhalte

Was ist angesagt?

Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave LloydAdobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave LloydDave Lloyd
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMAdobeMarketingCloud
 
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many DevicesMobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many DevicesApigee | Google Cloud
 
Immerse 2016 Efficient publishing with content fragments
Immerse 2016 Efficient publishing with content fragmentsImmerse 2016 Efficient publishing with content fragments
Immerse 2016 Efficient publishing with content fragmentsAdobeMarketingCloud
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APISharePointRadi
 
Designing your API Server for mobile apps
Designing your API Server for mobile appsDesigning your API Server for mobile apps
Designing your API Server for mobile appsMugunth Kumar
 
7 Deadly Sins in Azure AD App Development
7 Deadly Sins in Azure AD App Development7 Deadly Sins in Azure AD App Development
7 Deadly Sins in Azure AD App DevelopmentJoonas Westlin
 
Making Sense of Hypermedia APIs – Hype or Reality?
Making Sense of Hypermedia APIs – Hype or Reality?Making Sense of Hypermedia APIs – Hype or Reality?
Making Sense of Hypermedia APIs – Hype or Reality?Akana
 
12 hot features to engage and save time with aem 6.2
12 hot features to engage and save time with aem 6.212 hot features to engage and save time with aem 6.2
12 hot features to engage and save time with aem 6.2Tricode (part of Dept)
 
IMMERSE 2016 IST Mark Szulc Keynote
IMMERSE 2016 IST Mark Szulc KeynoteIMMERSE 2016 IST Mark Szulc Keynote
IMMERSE 2016 IST Mark Szulc KeynoteAdobeMarketingCloud
 
Building Better Web APIs with Rails
Building Better Web APIs with RailsBuilding Better Web APIs with Rails
Building Better Web APIs with RailsAll Things Open
 
Adobe AEM core components
Adobe AEM core componentsAdobe AEM core components
Adobe AEM core componentsLokesh BS
 
Modernizing Adobe Experience Manager (AEM)
Modernizing Adobe Experience Manager (AEM)Modernizing Adobe Experience Manager (AEM)
Modernizing Adobe Experience Manager (AEM)Gabriel Walt
 
JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?connectwebex
 

Was ist angesagt? (15)

Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave LloydAdobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEM
 
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many DevicesMobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
 
A tour of SQL Server
A tour of SQL ServerA tour of SQL Server
A tour of SQL Server
 
Immerse 2016 Efficient publishing with content fragments
Immerse 2016 Efficient publishing with content fragmentsImmerse 2016 Efficient publishing with content fragments
Immerse 2016 Efficient publishing with content fragments
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
 
Designing your API Server for mobile apps
Designing your API Server for mobile appsDesigning your API Server for mobile apps
Designing your API Server for mobile apps
 
7 Deadly Sins in Azure AD App Development
7 Deadly Sins in Azure AD App Development7 Deadly Sins in Azure AD App Development
7 Deadly Sins in Azure AD App Development
 
Making Sense of Hypermedia APIs – Hype or Reality?
Making Sense of Hypermedia APIs – Hype or Reality?Making Sense of Hypermedia APIs – Hype or Reality?
Making Sense of Hypermedia APIs – Hype or Reality?
 
12 hot features to engage and save time with aem 6.2
12 hot features to engage and save time with aem 6.212 hot features to engage and save time with aem 6.2
12 hot features to engage and save time with aem 6.2
 
IMMERSE 2016 IST Mark Szulc Keynote
IMMERSE 2016 IST Mark Szulc KeynoteIMMERSE 2016 IST Mark Szulc Keynote
IMMERSE 2016 IST Mark Szulc Keynote
 
Building Better Web APIs with Rails
Building Better Web APIs with RailsBuilding Better Web APIs with Rails
Building Better Web APIs with Rails
 
Adobe AEM core components
Adobe AEM core componentsAdobe AEM core components
Adobe AEM core components
 
Modernizing Adobe Experience Manager (AEM)
Modernizing Adobe Experience Manager (AEM)Modernizing Adobe Experience Manager (AEM)
Modernizing Adobe Experience Manager (AEM)
 
JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?
 

Ähnlich wie Web API HTTP Pipeline

Asynchronous Programming
Asynchronous ProgrammingAsynchronous Programming
Asynchronous ProgrammingLearnNowOnline
 
Building Windows 8 Metro Style Applications Using JavaScript and HTML5
Building Windows 8 Metro Style Applications Using JavaScript and HTML5Building Windows 8 Metro Style Applications Using JavaScript and HTML5
Building Windows 8 Metro Style Applications Using JavaScript and HTML5LearnNowOnline
 
Working with Controllers and Actions in MVC
Working with Controllers and Actions in MVCWorking with Controllers and Actions in MVC
Working with Controllers and Actions in MVCLearnNowOnline
 
SharePoint Document Management
SharePoint Document ManagementSharePoint Document Management
SharePoint Document ManagementLearnNowOnline
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVCLearnNowOnline
 
.NET Variables and Data Types
.NET Variables and Data Types.NET Variables and Data Types
.NET Variables and Data TypesLearnNowOnline
 
WPF: Working with Data
WPF: Working with DataWPF: Working with Data
WPF: Working with DataLearnNowOnline
 
Using The .NET Framework
Using The .NET FrameworkUsing The .NET Framework
Using The .NET FrameworkLearnNowOnline
 
Object-Oriented JavaScript
Object-Oriented JavaScriptObject-Oriented JavaScript
Object-Oriented JavaScriptLearnNowOnline
 
Creating a User Interface
Creating a User InterfaceCreating a User Interface
Creating a User InterfaceLearnNowOnline
 
KnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVCKnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVCLearnNowOnline
 
SharePoint: Introduction to InfoPath
SharePoint: Introduction to InfoPathSharePoint: Introduction to InfoPath
SharePoint: Introduction to InfoPathLearnNowOnline
 
Introducing the Entity Framework
Introducing the Entity FrameworkIntroducing the Entity Framework
Introducing the Entity FrameworkLearnNowOnline
 
Bring a Web Page Alive with jQuery
Bring a Web Page Alive with jQueryBring a Web Page Alive with jQuery
Bring a Web Page Alive with jQueryLearnNowOnline
 
.Net branching and flow control
.Net branching and flow control.Net branching and flow control
.Net branching and flow controlLearnNowOnline
 

Ähnlich wie Web API HTTP Pipeline (20)

Web API Basics
Web API BasicsWeb API Basics
Web API Basics
 
Asynchronous Programming
Asynchronous ProgrammingAsynchronous Programming
Asynchronous Programming
 
Building Windows 8 Metro Style Applications Using JavaScript and HTML5
Building Windows 8 Metro Style Applications Using JavaScript and HTML5Building Windows 8 Metro Style Applications Using JavaScript and HTML5
Building Windows 8 Metro Style Applications Using JavaScript and HTML5
 
Working with Controllers and Actions in MVC
Working with Controllers and Actions in MVCWorking with Controllers and Actions in MVC
Working with Controllers and Actions in MVC
 
SharePoint Document Management
SharePoint Document ManagementSharePoint Document Management
SharePoint Document Management
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 
.NET Variables and Data Types
.NET Variables and Data Types.NET Variables and Data Types
.NET Variables and Data Types
 
WPF Binding
WPF BindingWPF Binding
WPF Binding
 
WPF: Working with Data
WPF: Working with DataWPF: Working with Data
WPF: Working with Data
 
SQL Server: Security
SQL Server: SecuritySQL Server: Security
SQL Server: Security
 
Using The .NET Framework
Using The .NET FrameworkUsing The .NET Framework
Using The .NET Framework
 
Object-Oriented JavaScript
Object-Oriented JavaScriptObject-Oriented JavaScript
Object-Oriented JavaScript
 
Creating a User Interface
Creating a User InterfaceCreating a User Interface
Creating a User Interface
 
KnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVCKnockOutJS with ASP.NET MVC
KnockOutJS with ASP.NET MVC
 
SharePoint: Introduction to InfoPath
SharePoint: Introduction to InfoPathSharePoint: Introduction to InfoPath
SharePoint: Introduction to InfoPath
 
The Entity Data Model
The Entity Data ModelThe Entity Data Model
The Entity Data Model
 
Introducing the Entity Framework
Introducing the Entity FrameworkIntroducing the Entity Framework
Introducing the Entity Framework
 
Bring a Web Page Alive with jQuery
Bring a Web Page Alive with jQueryBring a Web Page Alive with jQuery
Bring a Web Page Alive with jQuery
 
Introducing LINQ
Introducing LINQIntroducing LINQ
Introducing LINQ
 
.Net branching and flow control
.Net branching and flow control.Net branching and flow control
.Net branching and flow control
 

Mehr von LearnNowOnline

Windows 8: Shapes and Geometries
Windows 8: Shapes and GeometriesWindows 8: Shapes and Geometries
Windows 8: Shapes and GeometriesLearnNowOnline
 
SQL: Permissions and Data Protection
SQL: Permissions and Data ProtectionSQL: Permissions and Data Protection
SQL: Permissions and Data ProtectionLearnNowOnline
 
New in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDENew in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDELearnNowOnline
 
Attributes, reflection, and dynamic programming
Attributes, reflection, and dynamic programmingAttributes, reflection, and dynamic programming
Attributes, reflection, and dynamic programmingLearnNowOnline
 
Object oriented techniques
Object oriented techniquesObject oriented techniques
Object oriented techniquesLearnNowOnline
 
Sql 2012 development and programming
Sql 2012  development and programmingSql 2012  development and programming
Sql 2012 development and programmingLearnNowOnline
 
Expression Blend Motion & Interaction Design
Expression Blend Motion & Interaction DesignExpression Blend Motion & Interaction Design
Expression Blend Motion & Interaction DesignLearnNowOnline
 

Mehr von LearnNowOnline (8)

Windows 8: Shapes and Geometries
Windows 8: Shapes and GeometriesWindows 8: Shapes and Geometries
Windows 8: Shapes and Geometries
 
SQL: Permissions and Data Protection
SQL: Permissions and Data ProtectionSQL: Permissions and Data Protection
SQL: Permissions and Data Protection
 
New in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDENew in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDE
 
Attributes, reflection, and dynamic programming
Attributes, reflection, and dynamic programmingAttributes, reflection, and dynamic programming
Attributes, reflection, and dynamic programming
 
Generics
GenericsGenerics
Generics
 
Object oriented techniques
Object oriented techniquesObject oriented techniques
Object oriented techniques
 
Sql 2012 development and programming
Sql 2012  development and programmingSql 2012  development and programming
Sql 2012 development and programming
 
Expression Blend Motion & Interaction Design
Expression Blend Motion & Interaction DesignExpression Blend Motion & Interaction Design
Expression Blend Motion & Interaction Design
 

Kürzlich hochgeladen

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Kürzlich hochgeladen (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Web API HTTP Pipeline

  • 1. Web API HTTP Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 2. Objectives Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 3. Objectives • Understand the client-side and server- side pipelines Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 4. Objectives • Understand the client-side and server- side pipelines • Send the best HTTP responses for Web API operations Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 5. Objectives • Understand the client-side and server- side pipelines • Send the best HTTP responses for Web API operations • Use the HTTP pipeline objects to handle exceptions Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 6. Objectives • Understand the client-side and server- side pipelines • Send the best HTTP responses for Web API operations • Use the HTTP pipeline objects to handle exceptions • Write your own custom handlers for Web API requests Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 7. Agenda Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 8. Agenda • Pipeline Elements Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 9. Agenda • Pipeline Elements • Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 10. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 11. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 12. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 13. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling • Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 14. Pipeline Elements Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 15. Pipeline Elements • Request/Response models have pipelines Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 16. Pipeline Elements • Request/Response models have pipelines • Composed of sequential events that fire Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 17. Pipeline Elements • Request/Response models have pipelines • Composed of sequential events that fire • Uses specific objects Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 18. Pipeline Elements • Request/Response models have pipelines • Composed of sequential events that fire • Uses specific objects • Web API has client and server-side pipelines Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 19. HttpRequestMessage Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 20. HttpRequestMessage • Represents all the info about the HTTP request Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 21. HttpRequestMessage • Represents all the info about the HTTP request • URL Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 22. HttpRequestMessage • Represents all the info about the HTTP request • URL • HTTP method Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 23. HttpRequestMessage • Represents all the info about the HTTP request • URL • HTTP method • Headers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 24. HttpResponseMessage Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 25. HttpResponseMessage • Represents all the info about the HTTP response Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 26. HttpResponseMessage • Represents all the info about the HTTP response • Status code Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 27. HttpResponseMessage • Represents all the info about the HTTP response • Status code • Success flag Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 28. HttpResponseMessage • Represents all the info about the HTTP response • Status code • Success flag • Original HTTP request Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 29. HttpMessageHandler Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 30. HttpMessageHandler • Base class implemented by other objects Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 31. HttpMessageHandler • Base class implemented by other objects • Most custom processing code goes here Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 32. HttpMessageHandler • Base class implemented by other objects • Most custom processing code goes here • Able to write custom handlers and put them in the pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 33. Agenda Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 34. Agenda • Pipeline Elements Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 35. Agenda • Pipeline Elements • Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 36. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 37. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 38. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 39. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling • Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 40. Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 41. Client-Side Pipeline • HttpClient sends requests Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 42. Client-Side Pipeline • HttpClient sends requests • Request is an HttpRequestMessage Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 43. Client-Side Pipeline • HttpClient sends requests • Request is an HttpRequestMessage • Request is sent to HttpMessageHandler Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 44. Client-Side Pipeline • HttpClient sends requests • Request is an HttpRequestMessage • Request is sent to HttpMessageHandler • HttpMessageHandler returns HttpResponseMessage Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 45. Client-Side Pipeline • HttpClient sends requests • Request is an HttpRequestMessage • Request is sent to HttpMessageHandler • HttpMessageHandler returns HttpResponseMessage • Default handler is HttpClientHandler Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 46. Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 47. Agenda Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 48. Agenda • Pipeline Elements Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 49. Agenda • Pipeline Elements • Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 50. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 51. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 52. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 53. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling • Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 54. Server-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 55. Server-Side Pipeline • Web host gives the request to HttpServer Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 56. Server-Side Pipeline • Web host gives the request to HttpServer • Request passed through series of HttpMessageHandlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 57. Server-Side Pipeline • Web host gives the request to HttpServer • Request passed through series of HttpMessageHandlers • Ends with HttpControllerDispatcher Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 58. Server-Side Pipeline • Web host gives the request to HttpServer • Request passed through series of HttpMessageHandlers • Ends with HttpControllerDispatcher • Dispatcher sends request to appropriate Controller which sends Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 59. Agenda Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 60. Agenda • Pipeline Elements Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 61. Agenda • Pipeline Elements • Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 62. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 63. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 64. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 65. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling • Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 66. Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 67. Improving CRUD Responses • By default, Web API always sends same HTTP response code Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 68. Improving CRUD Responses • By default, Web API always sends same HTTP response code • Can alter the response to include more accurate info Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 69. Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 70. Improving CRUD Responses Let’s improve a Web API service’s HTTP responses! Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 71. Agenda Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 72. Agenda • Pipeline Elements Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 73. Agenda • Pipeline Elements • Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 74. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 75. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 76. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 77. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling • Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 78. Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 79. Exception Handling • Exceptions tend to be vague on client Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 80. Exception Handling • Exceptions tend to be vague on client • HttpResponseException Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 81. Exception Handling • Exceptions tend to be vague on client • HttpResponseException • Can use filters to assign HTTP responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 82. Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 83. Exception Handling Let’s set up an automated way to send better error messages to the client Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 84. Agenda Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 85. Agenda • Pipeline Elements Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 86. Agenda • Pipeline Elements • Client-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 87. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 88. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 89. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 90. Agenda • Pipeline Elements • Client-Side Pipeline • Server-Side Pipeline • Improving CRUD Responses • Exception Handling • Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 91. Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 92. Custom Handlers • Inherit DelegatingHandler Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 93. Custom Handlers • Inherit DelegatingHandler • Custom code to perform any kind of per request functionality Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 94. Custom Handlers • Inherit DelegatingHandler • Custom code to perform any kind of per request functionality • Logging Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 95. Custom Handlers • Inherit DelegatingHandler • Custom code to perform any kind of per request functionality • Logging • Security Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 96. Custom Handlers • Inherit DelegatingHandler • Custom code to perform any kind of per request functionality • Logging • Security • Handling certain kinds of requests Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 97. Custom Handlers Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 98. Custom Handlers We’ll add some security to a Web API service Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 99. Learn More! Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 100. Learn More! • This is an excerpt from a larger course. Visit www.learnnowonline.com for the full details! Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 101. Learn More! • This is an excerpt from a larger course. Visit www.learnnowonline.com for the full details! Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 102. Learn More! • This is an excerpt from a larger course. Visit www.learnnowonline.com for the full details! • Learn more about Web API on SlideShare: Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company
  • 103. Learn More! • This is an excerpt from a larger course. Visit www.learnnowonline.com for the full details! • Learn more about Web API on SlideShare:  Web API Basics Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. DEMO: rest of section\n
  82. DEMO: rest of section\n
  83. DEMO: rest of section\n
  84. DEMO: rest of section\n