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
Web Api 入门实战 (快速入门+工具使用+不依赖IIS)的更多相关文章
- net core体系-web应用程序-4asp.net core2.0 项目实战(CMS)-第二章 入门篇-快速入门ASP.NET Core看这篇就够了
.NET Core实战项目之CMS 第二章 入门篇-快速入门ASP.NET Core看这篇就够了 原文链接:https://www.cnblogs.com/yilezhu/p/9985451.ht ...
- 【WEB API项目实战干货系列】- 导航篇(十足干货分享)
在今天移动互联网的时代,作为攻城师的我们,谁不想着只写一套API就可以让我们的Web, Android APP, IOS APP, iPad APP, Hybired APP, H5 Web共用共同的 ...
- 【WEB API项目实战干货系列】- 接口文档与在线测试(二)
上一篇: [WEB API项目实战干货系列]- Web API 2入门(一) 这一篇我们主要介绍如何做API帮助文档,给API的调用人员介绍各个 API的功能, 输入参数,输出参数, 以及在线测试 A ...
- 【WEB API项目实战干货系列】- API访问客户端(WebApiClient适用于MVC/WebForms/WinForm)(四)
这几天没更新主要是因为没有一款合适的后端框架来支持我们的Web API项目Demo, 所以耽误了几天, 目前最新的代码已经通过Sqlite + NHibernate + Autofac满足了我们基本的 ...
- 【WEB API项目实战干货系列】- API登录与身份验证(三)
上一篇: [WEB API项目实战干货系列]- 接口文档与在线测试(二) 这篇我们主要来介绍我们如何在API项目中完成API的登录及身份认证. 所以这篇会分为两部分, 登录API, API身份验证. ...
- 【WEB API项目实战干货系列】- WEB API入门(一)
这篇做为这个系列的第一篇,做基本的介绍,有经验的人可以直接跳到第二部分创建 ProductController. 创建 Web API 项目 在这里我们使用VS2013, .NET 4.5.1创建 ...
- .NET Core实战项目之CMS 第二章 入门篇-快速入门ASP.NET Core看这篇就够了
作者:依乐祝 原文链接:https://www.cnblogs.com/yilezhu/p/9985451.html 本来这篇只是想简单介绍下ASP.NET Core MVC项目的(毕竟要照顾到很多新 ...
- RocketMQ实战快速入门
转自:https://www.jianshu.com/p/824066d70da8 一.RocketMQ 是什么 Github 上关于 RocketMQ 的介绍:RcoketMQ 是一款低延 ...
- Web api 文档以及测试工具配置
第一步: 创建web api 在nuget 上搜索 webapitestclient (包含预发行版) 然后在 /Areas/HelpPage/Views/Help/Api.cshtml 末尾 添加 ...
随机推荐
- 聊聊Unity项目管理的那些事:Git-flow和Unity
0x00 前言 目前所在的团队实行敏捷开发已经有了一段时间了.敏捷开发中重要的一个话题便是如何对项目进行恰当的版本管理.项目从最初使用svn到之后的Git One Track策略再到现在的GitFlo ...
- 菜鸟学Struts2——Struts工作原理
在完成Struts2的HelloWorld后,对Struts2的工作原理进行学习.Struts2框架可以按照模块来划分为Servlet Filters,Struts核心模块,拦截器和用户实现部分,其中 ...
- JavaScript中Math对象的方法介绍
1.比较最值方法 比较最值有两种方法,max() 和 min() 方法. 1.1 max() 方法,比较一组数值中的最大值,返回最大值. var maxnum = Math.max(12,6,43,5 ...
- RestTemplate发送请求并携带header信息
1.使用restTemplate的postForObject方法 注:目前没有发现发送携带header信息的getForObject方法. HttpHeaders headers = new Http ...
- JavaScript模仿块级作用域
avaScript 没有块级作用域的概念.这意味着在块语句中定义的变量,实际上是在包含函数中而非语句中创建的,来看下面的例子: function outputNumbers(count){ for ( ...
- [C#] C# 知识回顾 - 表达式树 Expression Trees
C# 知识回顾 - 表达式树 Expression Trees 目录 简介 Lambda 表达式创建表达式树 API 创建表达式树 解析表达式树 表达式树的永久性 编译表达式树 执行表达式树 修改表达 ...
- java面向对象中的关键字
1,super关键字 super:父类的意思 1. super.属性名 (调用父类的属性) 2. super.方法名 (调用父类的方法) 3. super([参数列表])(调用父类的构造方法) 注意: ...
- PLSql Oracle配置
1.安装Oracle客户端或者服务端 2.配置环境变量 <1>.一般如果安装了Oracle客户端或者服务端的话,在环境变种的Path中有Oracle的安装路径(计算机-属性-高级系统设置- ...
- ubuntu系统(华硕笔记本)屏幕亮度用Fn控制的调节设置
亲测配置: 系统:Linux lite 3.2 x86_64(Ubuntu其他版本可参考修改) 笔记本:华硕(asus)1201N 达到的效果: 可以正常使用Fn+F5调暗,Fn+F6调亮. 设置步骤 ...
- Linux网卡驱动安装、防火墙原理
安装网卡驱动程序: 需要检查是否安装kernel依赖包: rpm –q kernel-devel #检查kernel依赖包是否安装 yum –y install kernel-devel 检查gcc和 ...