在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API。

在.net平台下,你有很多的选择来构建一个HTTP Services。

我分享一下我对Web Service、WCF以及Web API的看法。

Web Service

  1、它是基于SOAP协议的,数据格式是XML

  2、只支持HTTP协议

  3、它不是开源的,但可以被任意一个了解XML的人使用

  4、它只能部署在IIS上

WCF

  1、这个也是基于SOAP的,数据格式是XML

  2、这个是Web Service(ASMX)的进化版,可以支持各种各样的协议,像TCP,HTTP,HTTPS,Named Pipes, MSMQ.

  3、WCF的主要问题是,它配置起来特别的繁琐

  4、它不是开源的,但可以被任意一个了解XML的人使用

  5、它可以部署应用程序中或者IIS上或者Windows服务中

Web API

  1、这是一个简单的构建HTTP服务的新框架

  2、在.net平台上Web API 是一个开源的、理想的、构建REST-ful 服务的技术

  3、不像WCF REST Service.它可以使用HTTP的全部特点(比如URIs、request/response头,缓存,版本控制,多种内容格式)

  4、它也支持MVC的特征,像路由、控制器、action、filter、模型绑定、控制反转(IOC)或依赖注入(DI),单元测试。这些可以使程序更简单、更健壮

  5、它可以部署在应用程序和IIS上

  6、这是一个轻量级的框架,并且对限制带宽的设备,比如智能手机等支持的很好

  7、Response可以被Web API的MediaTypeFormatter转换成Json、XML 或者任何你想转换的格式。

WCF和WEB API我该选择哪个?

  1、当你想创建一个支持消息、消息队列、双工通信的服务时,你应该选择WCF

  2、当你想创建一个服务,可以用更快速的传输通道时,像TCP、Named Pipes或者甚至是UDP(在WCF4.5中),在其他传输通道不可用的时候也可以支持HTTP。

  3、当你想创建一个基于HTTP的面向资源的服务并且可以使用HTTP的全部特征时(比如URIs、request/response头,缓存,版本控制,多种内容格式),你应该选择Web API

  4、当你想让你的服务用于浏览器、手机、iPhone和平板电脑时,你应该选择Web API

转载于:https://www.cnblogs.com/ning123/p/10568361.html

WCF、WebAPI、WebService之间的区别相关推荐

  1. .NET 的 WCF 和 WebService 有什么区别?(转载)

    .NET 的 WCF 和 WebService 有什么区别?(转载) [0]问题: WCF与 Web Service的区别是什么? 和ASP.NET Web Service有什么关系? WCF与ASP ...

  2. 请问WCF 跟 WebService之间异同

    From: http://tommyhu.cn/wcf-WebService-qu-bie/ 问题: WCF与 Web Service的区别是什么? 和ASP.NET Web Service有什么关系 ...

  3. WCF、WebAPI、WCFREST、WebService之间的区别

    注明:转载 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下,你有很多的选择来构建一个HTTP Services.我 ...

  4. 关于WCF、WebAPI、WebService之间的区别总结 分布式通信技术

    早在1996年Gartner就前瞻性地提出了面向服务架构的思想(SOA),SOA 的走红在很大程度上归功于 Web Service 标准的成熟和应用的普及. Service Oriented Ambi ...

  5. 关于WCF、WebAPI、WCFREST、WebService之间的区别总结

    在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下,你有很多的选择来构建一个HTTP Services.我分享一下我对 ...

  6. 【转】WCF、WebAPI、WCFREST、WebService之间的区别

    在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下,你有很多的选择来构建一个HTTP Services.我分享一下我对 ...

  7. WCF和webservice的区别

    微软论坛的斑竹回答如下: 脑内:果然是高大上啊 1.WebService:严格来说是行业标准,不是技术,使用XML扩展标记语言来表示数据(这个是夸语言和平台的关键).微 软的Web服务实现称为ASP. ...

  8. WCF与 Web Service的区别

    [0]问题: WCF与 Web Service的区别是什么? 和ASP.NET Web Service有什么关系? WCF与ASP.NET Web Service的区别是什么? 这是很多.NET开发人 ...

  9. Remoting和Webservice有什么区别

    REMOTING和WEBSERVICE有什么区别 其实现的原理并没有本质的区别,在应用开发层面上有以下区别: 1.Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Serv ...

最新文章

  1. 开关面板如何自己印字_如何自己动手做一个智能开关
  2. VMWare中CentOS7 设置固定IP且能够访问外网
  3. Java删除文件及其子文件、文件夹
  4. Jdk1.6 JUC源码解析(13)-LinkedBlockingQueue
  5. 创建一个坚固的备份系统
  6. 大湾区网络安全大会开幕在即,五个看点揭秘
  7. 基于Docker的Mysql主从复制搭建_mysql5.7.x
  8. 失落城堡获取服务器信息,《失落城堡》精英服资格获取方法 失落城堡精英服招募...
  9. 可以飞的电动汽车,波音与保时捷要合作开发了
  10. 如何正确地开启Facebook广告营销大门?
  11. 《伟大的小细节:互联网产品设计中的微创新思维》——3.3 位置环境因素
  12. jenkins简介及docker部署
  13. 谷歌编译器收藏网站在哪打开
  14. c语言借阅管理题目内容描述,C语言-图书借阅管理系统
  15. C语言程序设计预备作业
  16. 基于C语言的学生选课系统
  17. FL Studio教程之如何慢慢降音
  18. Factorials
  19. armbian n1 桌面_N1盒子初体验(降级+刷armbian)
  20. 程序员钱多多准备应聘拼多多

热门文章

  1. 洛谷 深基 第1部分 语言入门 第4章 循环结构程序设计(2022.02.14)
  2. sigmoid函数求导_交叉熵损失函数的求导(Logistic回归)
  3. ios label文字行间距_iOS- 设置label的行间距字体间距
  4. python截取指定字符串_python 正则匹配获取指定多个词的在字符串(句子/段落)索引位置...
  5. PHP笔记-JavaScript中使用Smarty变量
  6. Qt文档阅读笔记-Broadcast Sender Example解析
  7. Linux工作笔记-使用find和grep检索文件或子文件中是否包含指定字符串
  8. Qt工作笔记-对QObject::connect函数进一步认识(重载)
  9. 计算机组成原理个人笔记(二)
  10. 2021年的高考大约多久可以查询成绩,2021高考完什么时候可以查分数 查成绩的时间...