WebAPI 时代

简介: WebAPI 时代

引言


小编跳槽到现任公司有一段时间,在这个公司对于小编是各种挑衅啊,也颠覆了小编之前的编程生涯,在前面的博客中小编隆重介绍了angularJS这个大神,这个让我不堪回首的两周,真是黑色天使啊!从现在开始我们在看看我们的后端的东西,首先就是给大家介绍后起之秀webAPI,为什么说这个是后起之秀呢?那咱就好好的说说这个东西。


webAPI到底是什么?


下面给大家一段官方的解释:


  ASP.NET Web API is a framework that makes it easy to build HTTP services that reach a broad range of clients, including browsers and mobile devices. ASP.NET Web API is an ideal platform for building RESTful applications on the .NET Framework.


上面这段文字是比较简单的哈,我就给大家提取出几个比较重点的东西:它可以很容易的对接各种客户端(各种浏览器、移动设备),构建http服务,所以它也很光荣的被大家成为框架。


webAPI的地位如何?


20160610104327282.png



Web API在ASP.NET完整框架中地位如下图,与SignalR一起同为构建Service而服务的框架。Web API负责构建http常规服务,而SingalR主要负责的是构建实时服务,例如股票,聊天室,在线游戏等实时性要求比较高的服务。

 

webAPI与wcf的简单的比较?


20160610105736458.png


上面我们已经介绍了webAPI最重要是可以面向各种客户端服务,它与WCF相比Web API利用Http协议的各个方面来表达服务(例如 URI/request response header/caching/versioning/content format),因此就省掉很多配置。


那么当我们发布服务的时候,我们如何在这两者之间抉择呢?下面给大家提供几种参考标准!


   1、如果服务需要支持One Way Messaging/Message Queue/Duplex Communication,选择WCF


   2、如果服务需要在TCP/Named Pipes/UDP (wcf 4.5),选择WCF


   3、如果服务需要在http协议上,并且希望利用http协议的各种功能,选择Web API


   4、如果服务需要被各种客户端(特别是移动客户端)调用,选择Web API


WebAPI与MVC有何区别?


MVC和webAPI相比最大的缺点就是它只能面向浏览器服务而不能面向移动端的服务,这在移动办公迅速崛起的时代显得有点力不从心了,所以webAPI这个角色就理所当然的占据了很重要的地位。下面我们就详细的给大家介绍一下这两者的区别:


MVC主要用来构建网站,既关心数据也关心页面展示,而Web API只关注数据Web API支持格式协商,客户端可以通过Accept header通知服务器期望的格式Web API支持Self Host,MVC目前不支持


Web API通过不同的http verb表达不同的动作(CRUD),MVC则通过Action名字表达动作Web API内建于ASP.NET System.Web.Http命名空间下,MVC位于System.Web.Mvc命名空间下,因此modelbinding/filter/routing等功能有所不同最后,Web API非常适合构建移动客户端服务


小结


上面是小编总结的一些关于WebAPI和之前我们比较熟悉的技术的一些对比,关于这个技术小编也是刚接触不久,这是项目中框架中的一部分,所以就简单的总结了一下,如果有什么不对的地方还请广大读者拍砖!

目录
相关文章
|
3月前
|
开发框架 前端开发 JavaScript
前后端分离,Asp.net core webapi 如何配置跨域
前后端分离,Asp.net core webapi 如何配置跨域
|
开发框架 前端开发 .NET
【WebApi】————.net WebApi开发(一)
【WebApi】————.net WebApi开发(一)
400 0
【WebApi】————.net WebApi开发(一)
|
编解码 JavaScript 前端开发
WebApi入门第一章(WebApi介绍)
WebApi入门第一章(WebApi介绍)
313 0
WebApi入门第一章(WebApi介绍)
WebApi下做项目配置
WebApi下做项目配置
102 0
|
XML JSON 数据格式
【WebApi】————.net WebApi开发(三)
【WebApi】————.net WebApi开发(三)
98 0
|
API Android开发 iOS开发
【WebApi】————.net WebApi开发(二)
【WebApi】————.net WebApi开发(二)
139 0
|
存储 JavaScript 前端开发
WebAPI
WebAPI
241 0
|
缓存 API 网络架构
WebAPI简介
有三个核心:资源(resource),URL(统一资源标识符)和表示
341 0
WebAPI简介
|
开发框架 缓存 .NET
WebAPI-处理架构
问题1:HTTP请求和返回相应的HTTP响应信息之间发生了什么?
195 0
WebAPI-处理架构
|
存储 缓存 前端开发
为什么我要推荐你使用Core WebApi?
为什么我要推荐你使用Core WebApi?
279 0
为什么我要推荐你使用Core WebApi?