首页新闻找找看学习计划

web servicer 跟 web api 区别

0
悬赏园豆:50 [已解决问题] 解决于 2014-10-07 09:12

目前项目需要从http协议下的通信技术选样,因为是做手机端,所有考虑到web api 但是网上资料偏少。特请各位大哥多多指教

菜鸟无名的主页 菜鸟无名 | 初学一级 | 园豆:9
提问于:2014-09-28 17:44
< >
分享
最佳答案
0

标准答案:

微软的web api是在vs2012上的mvc4项目绑定发行的,它提出的web api是完全基于RESTful标准的,完全不同于之前的(同是SOAP协议的)wcf和webService,它是简单,代码可读性强的,上手快的,如 果要拿它和web服务相比,我会说,它的接口更标准,更清晰,没有混乱的方法名称,有的只有几种标准的请求,如get,post,put,delete 等,它们分别对应的几个操作

收获园豆:25
LiuKaiFa | 小虾三级 |园豆:1491 | 2014-10-04 15:23
其他回答(7)
0

WEBSERVICE,走SOAP协议,虽然SOAP也 就是基于HTTP的协议,但是,在客户端,还是 容易被莫名其妙的拦截了。

WebApi完全走HTTP协议,所以,在 访问 中,被 拦截的可能性小。

此外,WebService,除非强行定义,否则,数据都要使用SOAP封包,在客户端开发的时候相对困难,而WebApi相对简单。

但是,WebService是早在1.1(好像是 1.0)就提供支持的,而WebApi是要.net 4.5才提供支持。

至于WebApi的资料?如果你会MVC,那么也就会了。

收获园豆:25
519740105 | 园豆:5810 (大侠五级) | 2014-09-28 18:02

webApi不一定需要.net4.5,较低版本如4.0也能跑。

 

支持(0) 反对(0) 幻天芒 | 园豆:36522 (高人七级) | 2014-09-29 08:49

@幻天芒: 对。4.0也可以跑,但是,4.0的话,只能安装低版本的MVC,也就会导致MVC的一些新技术是用不上。

在XP系统里,能安装的.NET最高版本是4.0,不能安装4.5及以上版本。

支持(0) 反对(0) 519740105 | 园豆:5810 (大侠五级) | 2014-09-29 08:59

@519740105: MVC4在4.0下可用,5.0的话新特性大部分是路由。

支持(0) 反对(0) 幻天芒 | 园豆:36522 (高人七级) | 2014-09-29 10:08
0

我的理解,主要还是设计思路不一个,
一个是提供服务,一个是提供仓储

不过我都是把webapi当成服务来用的....

吴瑞祥 | 园豆:28731 (高人七级) | 2014-09-29 08:32
0

我觉得WebService相对较重,WebApi呢,则很适合RESTFul风格,非常轻量,同时兼容性非常好。

幻天芒 | 园豆:36522 (高人七级) | 2014-09-29 08:57
0

实用角度来说,WebService一般返回格式是xml,网络传输会多于大量无用的格式字符,现在一般都用web api,资料www.asp.net还有微软各种学院上大堆的资料

draculav | 园豆:734 (小虾三级) | 2014-09-29 11:20
0

不是三言两语能说清楚。

Firen | 园豆:5483 (大侠五级) | 2014-09-29 17:24
0

web api就是restful的web service

undefined | 园豆:698 (小虾三级) | 2014-10-02 19:56
0

哎,这个问题我也问过。

最后用比较通俗的话来理解就是:

webservice的话,如果是.net平台调用很方便,其实平台调用就有点麻烦。要引用一些库之类的,另外在传输过程中用的是xml格式的字符串,引库+xml估计就是他们说的“庞大”吧。

 

而webAPI呢,就是一个URI资源,访问方式和访问普通的一个页面一样,直接输入URL就能访问了,不管在哪个平台,都一样

至于什么REST风格之类的。。我真看不明白。

 

这是我的总结,希望能帮到你吧。

hexllo | 园豆:405 (菜鸟二级) | 2014-10-04 19:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册