Web Api 入门实战 (快速入门+工具使用+不依赖IIS)

平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html

屁话我也就不多说了,什么简介的也省了,直接简单概括+demo演示

 

你可以把webapi理解为面向资源编程(就是通过http请求来直接操作,比如get post put delete等等)

 工具:PostMan

先不讲技术,先引入,让大家看看这个是什么?

这个是webapi里面的某个控制器,里面定义了很多方法,和http请求有一一对应的嫌疑

api控制器里面的方面一般都是和请求对应的(逆天建议这样去写)

比如我们请求一下get,返回的数据就是我们上面方法的返回值

Post请求一下

Delete请求一下

+++++++++++++++++++++++++++++++++++华丽的分割线+++++++++++++++++++++++++++++++++++++++++

下面带着你的疑问跟我一起快速入门:

下面我们建一个webapi的项目(面向资源编程肯定是未来一大方向)

添加一个控制器

取个名字

他会自动继承apiContrller,定义几个常见的方法(请求)

方法可以有重载,方法体里面和C#代码差不多,原来怎么写还怎么写

运行一下, 访问:http://localhost:6023/api/home默认会访问get的无参方法,就和mvc里面默认访问index方法一样

注意了,和mvc不一样咯

如果是mvc的home控制器

那么肯定是这样的访问: xxx/Home/Get

我们直接利用工具更形象的操作一下:

很多api接口都是用他来写,这次我们来带个参数:

 

这个是最基本的使用方法

 

有人会问了,web程序怎么访问呢?

我不说话,给个提示你自己体验一下:

$.post('',{},function(){
});

+++++++++++++++++++++++++++下面的是拓展部分不要求掌握+++++++++++++++++++++++++++++++++++++=

下面说一下不依赖于IIS的方式

用nuget添加web api owin self host包(对比传统项目引用,nuget的好处==》你依赖啥,我就帮你引入啥,不要你操心

新增一个Owin的Startup类,类似于我们传统项目的Global文件

配置一下webapi,可以参考传统webapi里面的"路由"

添加一个控制器的文件夹,并添加一个类

继承一下apiController并定义一下常见方法

在main方面里面启动owin host

这边如果出错==》一般都是端口占用的时候或者权限不够导致的

可以参考:http://www.cnblogs.com/dunitian/p/5232229.html

运行一下,用工具测试一下

带参数的时候

然而只是这样吗?nonono,神奇的事情即将发生。我已经把vs关了

下面看owin牛逼之处,我们把刚才生成的文件直接打开

用工具再次模拟请求一下

擦~网站就这么不需要部署了?

收工,下面的你们自己研究了,不然太没意思了

Demo附上:http://pan.baidu.com/s/1skrQaD3

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、源码特点       1、先进的 HTTP 编程模型: 使用新的强类型的 HTTP 对象模型直接操作 HTTP 请求和响应, 在 HTTP客户端使用相同的编程模型和 HTTP 管道;       2、支持路由: Web API 完整支持 ASP.NET 路由, 包括路由参数和约束。 此外, 到动作的映射支持约定, 从此将不再需要向类或者方法添加类似于 [HttpPost] 之类的属性;       3、内容协商: 客户端与服务端可以一起决定 API 返回数据的格式。 默认支持 XML, JSON 以及 Form URL-Encoded 格式, 可以扩展添加自定义格式, 甚至可以替换掉默认的内容协商策略;       4、模型绑定与验证: 模型绑定器可以轻易地从 HTTP 请求中提取数据并转换成在动作方法中使用的 .Net 对象;       5、过滤: Web API 支持过滤, 包括总所周知的 [Authorize] 过滤标记, 可以为 Action 添加并插入自定义过滤, 实现认证、异常处理等;       6、查询聚合: 只要简单的返回 Iqueryable , Web API 将会支持通过 OData 地址约定进行查询;       7、改进的 Http 细节可测试性: Web API 不是将 HTTP 细节设置到一个静态的 Context 对象上, 而是使用 HttpRequestMessage 和 HttpResponseMessage 实例, 可以使用这些对象的泛型版本为这些 Http 类型添加自定义类型;       8、改进的依赖反转 (IoC) 支持: Web API 使用 MVC Dependency Resolver 实现的服务定位器模式在不同的场景下来获取实例;       9、基于代码的配置: Web API 单独使用代码完成配置, 从而保证了配置文件的整洁;       10、自托管 (Self-Host) : Web API 除了可以托管在 IIS 中, 还可以托管在进程中,依旧可以使用路由以及其它的特性。 二、注意事项       1、开发环境为Visual Studio 2012,数据库为SqlServer2008,使用.net 4.0开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值