Web Serviceweb
1.基于SOAP协议,以XML格式返回数据。架构
2.只支持HTTP协议。框架
3.不开源,能用于全部能解析XML的客户端。orm
4.只能寄宿在IIS上面。ip
WCFit
1. 也是基于SOAP协议,以XML格式返回数据。io
2.是Web Service(ASMX)的升级,支持多种协议,如:TCP, HTTP, HTTPS, Named Pipes, MSMQ。form
3.WCF配置过于繁杂。test
4.不开源,能用于全部能解析XML的客户端。配置
5.可以寄宿在应用程序,IIS和Windows服务中。
WCF REST
1.须要启用webHttpBindings。
2.支持HTTP GET和POST,经过添加[WebGet]和[WebInvoke]属性实现。
3.若是须要使用其余HTTP请求方式(e.g. PUT, DELETE),须要在IIS中进行额外配置。
4.经过URL参数传输数据,须要进行WebGet配置,必需要指定其中的UriTemplate。
5.支持XML, JSON等数据格式。
WEB API
1.微软提供的一种更简单方便地建立HTTP服务的新框架。
2.开源项目,是在.NET平台上创建REST-ful服务的理想平台。
3.和WCF Rest比较,Web API支持所有的HTTP特性(like URIs, request/response headers, caching, versioning, various content formats.)。
4.也支持MVC特性,如routing, controllers, action results, filter, model binders, IOC container or dependency injection, unit testing。
5.能够寄宿在应用程序或者IIS上。
6.是一个轻量级架构,能够更好的用于像智能手机这样具备有限带宽的设备。
7.返回数据时,经过MediaTypeFormatter, 能够返回JSON, XML或者其余自定义数据。