Exam 70-487 Preparation, Part IV - Web API

This is the fourth part in the Exam 70-487 preparation materials series. This post will cover all objectives regarding Web API. If you want to see all of this in action, check out the Github repository.

Objectives

  • Design a Web API
    • Define HTTP resources with HTTP actions; plan appropriate URI space and map URI space using routing; choose appropriate HTTP method (get, put, post, delete) to meet requirements; choose appropriate format (Web API formats) for responses to meet requirements; plan when to make HTTP actions asynchronous; design and implement routes
  • Implement a Web API
    • Accept data in JSON format (in JavaScript, in an AJAX callback); use content negotiation to deliver different data formats to clients; define actions and parameters to handle data binding; use HttpMessageHandler to process client requests and server responses; implement dependency injection, along with the dependency resolver, to create more flexible applications; implement action filters and exception filters to manage controller execution; implement asynchronous and synchronous actions; implement streaming actions; implement SignalR; test Web API web services
  • Secure a Web API
    • Implement HTTPBasic authentication over SSL; implement Windows Auth; prevent cross-site request forgery (XSRF); design, implement and extend authorisation and authentication filters to control access to the application; implement Cross Origin Request Sharing (CORS); implement SSO by using OAuth 2.0; configure multiple authentication modes on a single endpoint
  • Host and manage Web API
    • Host Web API in an ASP.NET app; self-host a Web API in your own process (a Windows service) including Open Web Interface for .NET (OWIN); host services in an Azure worker role; restrict message size; configure the host server for streaming
  • Consume Web API web services
    • Consume Web API services by using HttpClient synchronously and asynchronously; send and receive requests in different formats (JSON/HTML/etc.); request batching

Notes

Design a Web API

Implement a Web API

Secure a Web API

Host and manage a Web API

Consume Web API Web Services

#

Written on June 4, 2016