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

相關文章
相關標籤/搜索