WebAPI与传统的WebService有哪些不同

妖狐艹你老母 2022-06-15 12:20 269阅读 0赞
  1. 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web ServiceWCF,现在又出了Web API。在.net平台下,你有很多的选择来构建一个HTTP Services。我分享一下我对Web ServiceWCF以及Web API的看法。
  2.   Web Service
  3.   1、它是基于SOAP协议的,数据格式是XML
  4.   2、只支持HTTP协议
  5.   3、它不是开源的,但可以被任意一个了解XML的人使用
  6.   4、它只能部署在IIS
  7.   WCF
  8.   1、这个也是基于SOAP的,数据格式是XML
  9.   2、这个是Web ServiceASMX)的进化版,可以支持各种各样的协议,像TCPHTTPHTTPSNamed Pipes, MSMQ.
  10.   3WCF的主要问题是,它配置起来特别的繁琐
  11.   4、它不是开源的,但可以被任意一个了解XML的人使用
  12.   5、它可以部署应用程序中或者IIS上或者Windows服务中
  13.   WCF Rest
  14.   1、想使用WCF Rest service,你必须在WCF中使用webHttpBindings
  15.   2、它分别用[WebGet]和[WebInvoke]属性,实现了HTTPGETPOST动词
  16.   3、要想使用其他的HTTP动词,你需要在IIS中做一些配置,使.svc文件可以接受这些动词的请求
  17.   4、使用WebGet通过参数传输数据,也需要配置。而且必须指定UriTemplate
  18.   5、它支持XMLJSON以及ATOM这些数据格式
  19.   Web API
  20.   1、这是一个简单的构建HTTP服务的新框架
  21.   2、在.net平台上Web API 是一个开源的、理想的、构建REST-ful 服务的技术
  22.   3、不像WCF REST Service.它可以使用HTTP的全部特点(比如URIsrequest/response头,缓存,版本控制,多种内容格式)
  23.   4、它也支持MVC的特征,像路由、控制器、actionfilter、模型绑定、控制反转(IOC)或依赖注入(DI),单元测试。这些可以使程序更简单、更健壮
  24.   5、它可以部署在应用程序和IIS
  25.   6、这是一个轻量级的框架,并且对限制带宽的设备,比如智能手机等支持的很好
  26.   7Response可以被Web APIMediaTypeFormatter转换成JsonXML 或者任何你想转换的格式。
  27.   
  28.   WCFWEB API我该选择哪个?
  29.   1、当你想创建一个支持消息、消息队列、双工通信的服务时,你应该选择WCF
  30.   2、当你想创建一个服务,可以用更快速的传输通道时,像TCPNamed Pipes或者甚至是UDP(在WCF4.5中),在其他传输通道不可用的时候也可以支持HTTP
  31.   3、当你想创建一个基于HTTP的面向资源的服务并且可以使用HTTP的全部特征时(比如URIsrequest/response头,缓存,版本控制,多种内容格式),你应该选择Web API
  32.   4、当你想让你的服务用于浏览器、手机、iPhone和平板电脑时,你应该选择Web API

发表评论

表情:
评论列表 (有 0 条评论,269人围观)

还没有评论,来说两句吧...

相关阅读