WCF、Web API、WCF REST、Web Service比较

原文地址:http://www.dotnet-tricks.com/Tutorial/webapi/JI2X050413-Difference-between-WCF-and-Web-API-and-WCF-REST-and-Web-Service.htmlhtml

WCFweb

1.基于Soap协议,以XML形式返回。json

2.是Web Service的进化 支持多种协议:TCP,HTTP,HTTPS,命名管道,消息队列。windows

3.缺点:冗长的大量配置。api

4.不开源,可是能够被懂xml的定制。浏览器

5.能够部署在应用、IIS或windows 服务。框架

 

Web APIspa

1.建立http服务的一个简单快捷的框架。orm

2.开源。xml

3.WCF不一样的:使用了整个HTTP特性。

4.支持MVC特性包括:routing, controllers, action results, filter, model binders, IOC container or dependency injection, unit testing

5.部署在应用或IIS上。

6.轻量级的,适合对带宽有要求的像智能手机等设备。

7.Responses 格式是多样的,例如json,xml等任何能够转化为MediaTypeFormatter 的。

WCF Rest

1.使用WCF Rest 须要webHttpBindings;

2.支持HTTP Get 和HTTP Post

3.支持其余http verbs 须要对IIS进行设置。

4.使用webGet 参数传递数据须要设置。

5.支持XML、json和ATOM数据

 

WEB Service

1.基于SOAP 返回数据为xml类型

2.仅支持http 协议

3.不开源,可是能够被懂xml的定制。

4.仅能在IIS上发布。

 

选择WCF仍是Web API

1.在特定的情景下,如单向传递,消息队列,双端通讯等选择WCF。

2.须要快速可靠的传输通道TCP 命名管道 UDP 同事须要在传输信道不可靠时支持http。

3.须要建立资源导向的基于http的服务(用到HTTP全部特性)时 使用Web API

4.向多种客户例如浏览器,移动端等同时提供服务的选择Web API

相关文章
相关标签/搜索