WebAPI与传统的WebService有哪些不同

 我来答
wovie89
2016-04-12 · TA获得超过2496个赞
知道小有建树答主
回答量:800
采纳率:77%
帮助的人:377万
展开全部
  1. WebService是利用HTTP管道实现了RPC的一种规范形式,放弃了对HTTP原生特征与语义的完备支持;而WebAPI是要保留HTTP原生特征与语义的同时实现RPC,但WebAPI的实现风格可以是千姿百态,RESTful只是实现了其中一种风格,你也可以定义一种风格,并实现

  2. WebAPI相比WebService更为轻量级、灵活、优化好的情况下,性能更有优势,但是对复杂或大型业务的描述与使用增加了无形的成本

  3. WebAPI可以更好的利用HTTP与生俱来的特征,如:缓存、代理、安全、头信息扩展,反之,部分实现方式WebService无法利用HTTP特征

  4. 本质上WebAPI与传统模式的WebService都是实现RPC,远程服务;传统的WebService只是利用了HTTP通道,进行独立的交互,但是这个交互协议可以移植到其他协议下运作,而WebAPI天生与HTTP依赖无法移植

  5. WebService与WebAPI在80端口下工作,都可以绕开默认的网络防火墙限制,因为默认下网络防火墙对系统级端口与协议下的内容是开放的

  6. WebService与RESTful WebAPI服务端都可以使用反射来实现自动化部署,只是前者更为容易,因为存在标准的规范,后者只是开发WebAPI的推荐风格,实现上需要自己来规范与描述,处理不兼容问题;WebAPI在无反射下的业务实现更为直观接近MVC模式下的开发的应用,通用,性能更好、更为灵活,能够直接利用HTTP的动态网页技术开发接口与功能

  7. WebAPI对于交互数据的格式没有明确规定,使得其可以更好的使用在特定的软件运行平台,但是需要开发者对各种格式的支持;传统的WebService则要求使用服务的平台对数据格式强制适应,服务端的交互数据处理变得更加快捷容易,而增加了不同使用端的对服务交互困难度

xiangjuan314
推荐于2018-03-01 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2839万
展开全部
两者都是服务,只是表现形式存在一些差异
webapi多用于基于http请求的服务应用,比如说移动服务端或者需要提供第三方API 服务的场景下。
webservice也可以应用于webapi所在的场景,但是如果是我的选择,我一般是做为内部服务的使用,好比如果一个系统我会用wcf/webservice作为内部子系统间的服务通信,而webapi用于外部服务的请求~

个人理解,webapi和webservice并没有绝对的应用场景,相对来说根据场景分析那种技术更简洁,更能有效的帮助到你才是关键
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式