Web Service vs WCF vs WCF REST vs Web API

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或者其余自定义数据。

相关文章
相关标签/搜索