WebService與WebApi的區別


WebService的特征:

1 基於SOAP協議的,數據格式為XML
2 只支持HTTP協議,只能部署在IIS上
3 不是開源的,但可以被任意一個了解XML的人使用

SOAP :簡單對象訪問協議Simple Object Access Protocol,傳輸層 ,,XML傳輸消息
WSDL:Web Server Description Language :Web Server描述語言(元數據),給客戶端生成代理類的一個描述信息
UDDI :提供了一組基於標准的規范用於描述和發現服務,統一描述,發現和集成(UDDI-Universal Descript,Discovery,Integration),提供注冊和查找服務
客戶端在UDDI注冊表(Registry)查找服務,取得服務的WSDL描述,通過SOAP調用服務。

WebAPI 特征:

1 是簡單的 構建HTTP服務的新框架
2 在.net平台上WebApi是一個開源的,理想的,構建REST-FUL服務的技術
3 不像WCF REST Server 它可以使用HTTP的全部特點(URI,request/response頭,緩存,版本控制,多種內容格式)
4 支持MVC的特征。像路由、控制器、action、filter、模型綁定、控制反轉(IOC)或依賴注入(DI),單元測試。
4 可以部署在IIS和應用程序上
6 輕量級框架,並且對限制帶寬的設備,比如智能手機等支持的很好
7、Response可以被Web API的MediaTypeFormatter轉換成Json、XML 或者任何你想轉換的格式。
8、Web API非常適合構建移動客戶端服務

以下情況可以考慮用Web API

1、 需要Web Service但是不需要SOAP
2、 需要在已有的WCF服務基礎上建立non-soap-based http服務
3、 只想發布一些簡單的Http服務,不想使用相對復雜的WCF配置
4、 發布的服務可能會被帶寬受限的設備訪問
5、 希望使用開源框架,關鍵時候可以自己調試或者自定義一下框架
6、如果服務需要在http協議上,並且希望利用http協議的各種功能
7、如果服務需要被各種客戶端(特別是移動客戶端)調用

webapi多用於基於http請求的服務應用,比如說移動服務端或者需要提供第三方API 服務的場景下
webservice也可以應用於webapi所在的場景,一般是做為內部服務的使用,好比如果一個系統用wcf/webservice作為內部子系統間的服務通信,而webapi用於外部服務的請求。



作者:無為無味無心

鏈接:https://www.jianshu.com/p/189be4296e30

來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM