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的地位如何?
Web API在ASP.NET完整框架中地位如下图,与SignalR一起同为构建Service而服务的框架。Web API负责构建
http常规服务,而SingalR主要负责的是构建实时服务,例如股票,聊天室,在线游戏等实时性要求比较高的服务。
webAPI与wcf的简单的比较?
上面我们已经介绍了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命名空间下,因此model
binding/filter/routing等功能有所不同
最后,Web API非常适合构建移动客户端服务
小结
上面是小编总结的一些关于WebAPI和之前我们比较熟悉的技术的一些对比,关于这个技术小编也是刚接触不
久,这是项目中框架中的一部分,所以就简单的总结了一下,如果有什么不对的地方还请广大读者拍砖!
WebAPI 时代的更多相关文章
- 07. Web大前端时代之:HTML5+CSS3入门系列~H5 地理位置
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 源码:https://github.com/duniti ...
- C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)
目 录 工业物联网和集成系统解决方案的技术路线... 1 前言... 1 第一章 系统架构... 3 1.1 硬件构架图... 3 1.2 ...
- Html5+css3+angularjs+jquery+webAPi 开发手机web(一)
前言 随着浏览器的发展 HTML5+CSS3 的使用也越来越广泛,一直想学这个,想学那个折腾下来几乎没学到什么东西.工作经验告诉我,要掌握一门技术,就需要在项目中去磨练, 所以我就准备开发一个手机端的 ...
- 使用ASP.Net WebAPI构建REST服务(六)——Self-Host
Asp.Net WebAPI生成的是一个程序集,并不是独立的进程,因此,要运行的时候必须将其承载在相应的宿主上,一般比较常见的是IIS承载.很多时候,我们为了简化部署或者功能集成,需要将其承载到独立的 ...
- WebApi及Fiddler工具
WebApi及Fiddler工具 1.概述 曾经有人问:asp.net mvc和asp.net webapi区别在哪?这个其实不好回答的.可能因为mvc模式盛行的原因,webapi显得孤芳自赏了,让人 ...
- WebApi 插件式构建方案
WebApi 插件式构建方案 WebApi 插件式构建方案 公司要推行服务化,不可能都整合在一个解决方案内,因而想到了插件式的构建方案.最终定型选择基于 WebApi 构建服务化,之所以不使用 WCF ...
- WebApi client 的面向切面编程
.Net的面向切面编程 .Net的服务端应用AOP很常见,在Asp.net MVC与Asp.net WebApi等新框架里到处都有AOP的影子,我们可以把一个服务方法“切”为很多面,日志面.验证面.请 ...
- ASP.NET WebApi技术从入门到实战演练
一.课程介绍 曾经有一位不知名的讲师说过这么一句名言: 一门RPC技术不会,那么千万万门RPC技术将都不会!在今天移动互联网的时代,作为攻城师的我们,谁不想着只写一套API就可以让我们的Web, An ...
- ASP.NET WebAPI数据传输安全HTTPS实战项目演练
一.课程介绍 HTTPS是互联网 Web 大势所趋,各大网站都已陆续部署了 HTTPS . 全站HTTPS时代,加密用户与网站间的交互访问,在客户端浏览器和Web服务器之间建立安全加密通道,一般情况 ...
随机推荐
- lintcode: 最小调整代价
题目 最小调整代价 给一个整数数组,调整每个数的大小,使得相邻的两个数的差小于一个给定的整数target,调整每个数的代价为调整前后的差的绝对值,求调整代价之和最小是多少. 样例 对于数组,最小的调整 ...
- Java科普之基础知识回顾
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! Java语言由C衍生,丢弃C中的指针,使用"发出指令-接收返回值-验证-发出指令-接收返回 ...
- Win8.1安装VirtualSVN Server发生service visualSVN Server failed to start解决办法
Service 'VisualSVN Server' failed to start. Please check VisualSVN Server log in Event Viewer for mo ...
- iOS 苹果真机鉴定
iPhone 4S(GSM) 16GB 黑色序列号:DX4KN69EDTC0设备名称:iPhone 4S容 量:16GB颜 色:黑色类 型:iPhone4,1代 号:n94ap型 号:MD235激活状 ...
- [iOS]URL编码和解码
1. 首先来看下什么样的是URL编码(字符串中带有%22 类似这样的) NSString *str = @"http://m.tuniu.com/api/home/data/index/c/ ...
- Data Base MongoDB 插入时间不正确的问题
关于mongodb插入时间不正确的问题 mongodb插入时间: 把本地时间转换为utc时间: 也就是比本地时间少8个小时: 读取的时候又会转换本地时间: 所有一般不需处理:
- linux 实时时钟(RTC)驱动【转】
转自:http://blog.csdn.net/yaozhenguo2006/article/details/6820218 这个是linux内核文档关于rtc实时时钟部分的说明,此文档主要描述了rt ...
- eclipse中tomcat使用add and remove无法发布web项目
继上次启动eclipse中的tomcat报classNotFound的问题后,这次又遇到新问题.就是右键点击tomcat使用add and remove发布web项目至tomcat后,启动tomcat ...
- 51nod 1049 1049 最大子段和 (dp)
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1049 令 dp[i]表示为以a[i]结尾的最大子段和,则 dp[i]= ...
- WebDriverExtensionsByC#
测试工具//********************************************************************************************** ...