Web API Basics

Page 1

Web API Basics

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


Objectives • See how REST and web services can be used to access data • Build your first Web API service • Use Web API naming conventions for routing • Modify your service for basic CRUD operations • Filter your data results with URL parameters

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


Agenda • • • • •

What Is ASP.NET Web API? Create Your First Web API Service Web API Routing Create a Web API Service for CRUD Operations Filtering Data with Parameters

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


What Is ASP.NET Web API? • Next iteration of WCF REST • Incorporated into ASP.NET MVC 4 • Framework for developing REST oriented services

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


REST • • • •

Uses HTTP protocols URLs and methods Accessible from a wide variety of clients HTTP methods: • • • •

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


GET • Primarily just a URL making a simple request for a resource, e.g., a web page • Response is sent back • Additional information is put in a query string • Generally used to Select data • Selecting all: http://www.root.com/products/ • Selecting one: http://www.root.com/products/17 Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


POST • Sends collection of name-value pairs along with the request • Commonly used with forms on the web • Used to add new resources (Insert) • Should return an appropriate HTTP success code

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


PUT • Used to store a resource at the supplied URL • Generally used for Editing existing resources

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


DELETE • Used for deleting resources • Should return an appropriate HTTP code

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


Agenda • • • • •

What Is ASP.NET Web API? Create Your First Web API Service Web API Routing Create a Web API Service for CRUD Operations Filtering Data with Parameters

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


Create Your First Web API Service • Create a repository • Create an API controller to use the repository • Try it out in a browser

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


Agenda • • • • •

What Is ASP.NET Web API? Create Your First Web API Service Web API Routing Create a Web API Service for CRUD Operations Filtering Data with Parameters

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


Web API Routing • Interpretation of URLs by the server to decide what code should handle the request • Operates similarly to ASP.NET MVC routing • Actions determined by HTTP method used

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


Default Mapping • Configured in Global.asax • Uses “api” as URL segment • Adds word “Controller” to the controller part of URL • Looks for action that begins with the HTTP method • Additional URL parameters are mapped as action parameters Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Alternative Routing Conventions • Rarely necessary for most Web API services • Several options to change URL routing

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


HTTP Method Attributes • Very similar to ASP.NET MVC • Use attributes to bind HTTP methods to specific actions [HttpGet] [HttpPost] [HttpPut] [HttpDelete] Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


AcceptVerbs Attribute • Also used on actions • Specify HTTP methods as strings • Especially useful for atypical HTTP methods

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


Action Names in the URL • Makes URLs route identically to ASP.NET MVC • Must change routeTemplate in Global.asax • Must also add HTTP method attributes to actions

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


Removing Actions from Routing • Used when a resource’s URL would trigger an action, but this is not desired • Use the NonAction attribute on the method

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


Agenda • • • •

What Is ASP.NET Web API? Create Your First Web API Service Web API Routing Create a Web API Service for CRUD Operations • Filtering Data with Parameters

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


Create a Web API Service for CRUD Operations • • • • • •

Create – POST Read – GET Update – PUT Delete – DELETE Basic functionality that most services will have Try it out! Learn More @ http://www.learnnowonline.com Copyright © by Application Developers Training Company


Agenda • • • • •

What Is ASP.NET Web API? Create Your First Web API Service Web API Routing Create a Web API Service for CRUD Operations Filtering Data with Parameters

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


Filtering Data with Parameters • Uses the OData protocol • Special query strings can be used to: • Filter • Page • Sort • And more…

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


Filter • Condition that evaluates to true or false • Uses OData-specific keywords • Must be sendable in a URL

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


Order By • Specifies the sort order of returned data • Can sort by multiple properties • Can specify ASC and DESC sorting

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


Paging • Done by using $skip and $top • $skip passes over a number of records • $skip should be set to: page number * page size • $top selects a certain number to return • $top should be set to page size

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


There’s More • There are other OData query strings • Other query keywords for $filter • www.odata.org

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


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.