In this part of article we will learn about asp.net web API and why we need asp.net web API.Most of developers are think about use to web API but they are not aware about that ,that's why i have decided to write complete topic for asp.net web API.If you want to learn all about REST web API you should visit my all part of article.I am also going to explain about basic definition of web service ,WCF,and difference between them because of most of developers are confused why i am using if we have already WCF and web service is available in market.
- What is web service ?
- What is WCF ?
- What is REST ?
- What difference between SOAP and REST based services ?
- What is difference between web service,WCF and Web API ?
- Introduction of web API and why web API become popular ?
What is web services(.asmx) ?
Before web services remoting is used but there are many cons that's why web services replace remoting. "Web service is like a web based application which is normally a class containing methods that could be used by other web based or window based applications. It also follows a code-behind layer such as the web pages, although its not containing a user interface."
Web services is way to communicate between two different or same web based application using "webmethod".web services can be accessible from web based or window based applications.Web services is soap based and transforming data via xml.
For more details about web services you can go through best article which is written by Vithal Wadje .
Drawback of web services,SOAP in Asp.net:
- Hosting dependency
- Protocol dependency
- Serialisation dependency
- Data transformation
And also there are more drawback which will resolved by WCF and Web API,for more details you can go on given link.
What is WCF(.svc) and why replace web services with WCF ?:
Preceding WCF, a .NET 2.0 web reference was made in the clients that went about as an intermediary that encouraged the correspondence with a Web Service. .NET3.5 acquainted another instrument with make these intermediaries that are likewise perfect with WCF server-side technologies.
"Windows Communication Foundation (Code named Indigo) is a programming stage and runtime framework for building, arranging and conveying system appropriated administrations. It is the most recent administration arranged innovation; Interoperability is the major qualities of WCF. It is bound together programming model gave in .Net Framework 3.0. WCF is a joined element of Web Service, Remoting, MSMQ and COM+. WCF gives a typical stage to all .NET correspondence. you can transfer information as asynchronous messages from one endpoint to another endpoint."
For more details all about WCf go through on given link. http://wcftutorial.net/
What REST ?
REST is stand for Representational State Transfer. (Sometime we can say "ReST".) Its a stateless, client-server, cacheable based protocol to communicate -- and in virtually all points, the HTTP protocol is using.REST is an architecture style for designing networked applications.
Actually By REST we can create web api using multiple verbes e.g GET,POST,PUT,DELETE and endpoint will looks like this.
For more details about REST go through given link.
What difference between SOAP and REST based services ?:
1. REST supports multiples verbes over http's (GET,POST,PUT,DELETE)
2. Soap is xml based protocal whereas REST is architectural based.
3. WDSL use to communicate between client and server. where as REST use XML or JSON.
4. Service is calling by RPC method whereas REST called by direct URL.
5. Web services is not return human readable data whereas REST returns JSON data.
6. REST is easy to consume whereas soap is some complicated.
7. REST is 5 times faster than soap.
8. REST transfering data via HTTP.
9. REST is stateless and allow to cache.
What is difference between web service,WCF and Web API ?
Now i am going to explain differences between web services ,wcf and Web api. actually i am trying to explain about scope of latest technologies.
- Web services is soap based and return xml data whereas wcf is also same as but web api can be return json data.
- Web services is support only HTTP protocal whereas WCF support multiple (TCP,named pipe,p2p,etc..) and Web api can be use from any where.
- Web Api can be consumed from any where or any plateform but web services can not.
- Web services can be hosted on IIS but wcf and can be anywhere,Web Api can be on IIS and self.
- We can use self hosting in wcf and WebApi but not allow in web services.
For more details you can go through given links.
Introduction of web API and why web API become popular ?
Web Api stands for "Application programming interface" its a open source and rich framework of ASP.NET. Asp.net WebApi is following MVC pattern architecture like controller,routing,action,filter,model binder,etc...Web API area is so broad because it can be consumed from anywhere any plateform any browser.Its totally independent like can be accessible from Mobile,tablet,android,window.etc..
According this image we can easily understand Web API can be consumed from anywhere.
1.It supports CRUD based action with HTTP verbs GET,POST,PUT and DELETE.
2.Response with status code.
3.Webapi support MediaTypeFormatter like multipart/formdata.
4.Easy to create and consume.
I hope you all learn lot of thinks why we are using web API and some drawback of web services and wcf ,So actually i have decided to write all about web API from a-z step by step in different different part.
In this article i have written only introduction part of Web api ,To more about web api wait.. for part 2 with example.
Bikesh Srivastava WEB API