webapi框架搭建-创建项目(二)-以iis为部署环境的配置
webapi框架搭建系列博客
上篇:webapi快速框架搭建-创建项目(一)
步骤
用nuget添加webapi包
空项目默认是没有webapi相关的dll,要自己去nuget里安装。
创建Global.asax全局应用程序类
在Global类的Application_Start里写入webapi的配置
using System;
using System.Web.Http; namespace webapi
{
public class Global : System.Web.HttpApplication
{ protected void Application_Start(object sender, EventArgs e)
{
#region webapi的相关配置
// GlobalConfiguration在Microsoft.AspNet.WebApi.Core里,用nuget添加Microsoft.AspNet.WebApi
GlobalConfiguration.Configure(config =>
{
// Web API 路由
config.MapHttpAttributeRoutes();//启用webapi的属性路由
// 配置webapi的默认路由模板
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}); #endregion } protected void Session_Start(object sender, EventArgs e)
{ } protected void Application_BeginRequest(object sender, EventArgs e)
{ } protected void Application_AuthenticateRequest(object sender, EventArgs e)
{ } protected void Application_Error(object sender, EventArgs e)
{ } protected void Session_End(object sender, EventArgs e)
{ } protected void Application_End(object sender, EventArgs e)
{ }
}
}
部署webapi在iis上
打开win10的iis管理器,创建一个网站,如下图。
当然也可以用vs自带的iis express,直接运行(按f5)就可以了。在开发时可用iis express快速的调试,但部署时就得用上iis了。
我在开发时习惯部署到iis上,这样开发时只要编译程序后就直接可以用postman来访问webapi接口是否正常,不用每次都启动iis express,这样速度有点慢,更方便的是可以用vs的调试--》附加到进程,来对已经发布的webapi接口网站进行调试,甚至只以远程调试服务器上的iis网站来排查问题。
创建接口并测试是否可访问
创建webapi接口控制类
using System.Web.Http; namespace webapi.example
{
public class TestController : ApiController
{
public IHttpActionResult Get()
{
return Ok("this is TestController.Get()");
}
}
}
编译后用postman访问接口的地址:http://localhost:101/api/test
webapi的路由和控制器在网站有很多教程,可自行学习,我个人建议看webapi的官网教程就行了,有中文版的,已经说的很清楚了,也更权威
webapi官方文档:webapi路由
webapi框架搭建-创建项目(二)-以iis为部署环境的配置的更多相关文章
- webapi框架搭建-创建项目(三)-webapi owin
上一篇:创建项目(二) 在上一篇里,我们已经创建好了webapi应用,并已经部署到iis里,本篇讲如何用owin自宿主或是iis宿主来部署webapi应用. owin介绍 传统的asp.net网站只能 ...
- webapi框架搭建-创建项目(一)
本文只是一些基本的vs操作,供初学者参考,有基础的请查看 创建项目(二) 创建项目(三) 前言 为了从头了解webapi的技术,创建一个为空的项目 步骤 我用的是vs2017,从文件-->新建- ...
- webapi框架搭建系列博客
webapi框架搭建系列博客 webapi框架搭建-创建项目(一) webapi框架搭建-创建项目(二)-以iis为部署环境的配置 webapi框架搭建-创建项目(三)-webapi owin web ...
- webapi框架搭建-安全机制(二)-身份验证
webapi框架搭建系列博客 身份验证(authentication)的责任是识别出http请求者的身份,除此之外尽量不要管其它的事.webapi的authentication我用authentica ...
- webapi框架搭建-安全机制(一)
本系列博客链接:webapi框架搭建系列博客 前言 webapi接口是开放给外部使用的,包括接口的地址,传参的规范,还有返回结果的说明.正因为接口的开放性,使得接口的安全很重要.试想一下,用抓包工具( ...
- webapi框架搭建-依赖注入之autofac
前言 c#的依赖注入框架有unity.autofac,两个博主都用过,感觉unity比较简单而autofac的功能相对更丰富(自然也更复杂一点),本篇将基于前几篇已经创建好的webapi项目,引入au ...
- webapi框架搭建-日志管理log4net
前言 本篇讲怎么在前几篇已经创建好的项目里加上日志处理机制,我们采用Log4net技术.跟多的log4net技术的细节请查阅log4net的官网. log4net官网:http://logging.a ...
- webapi框架搭建-webapi异常处理
webapi框架搭建系列博客 前言 上一篇我们已经完成了项目的日志管理,在项目开发中日志会经常记录程序中的异常,供后续问题排查使用.本篇讲如何在webapi里加入异常处理机制. 目的和原则 1.程序任 ...
- webapi框架搭建-安全机制(四)-可配置的基于角色的权限控制
webapi框架搭建系列博客 在上一篇的webapi框架搭建-安全机制(三)-简单的基于角色的权限控制,某个角色拥有哪些接口的权限是用硬编码的方式写在接口上的,如RBAuthorize(Roles = ...
随机推荐
- 手动搭建express框架
创建相应的文件夹 在根路径下创建package.json文件并在命令面板里安装相应的模块包(如下) 2. 在根路径下创建app.js, 在根路径下创建routes文件夹,并在文件夹中创建index. ...
- MapReduce编程(一) Intellij Idea配置MapReduce编程环境
介绍怎样在Intellij Idea中通过创建mavenproject配置MapReduce的编程环境. 一.软件环境 我使用的软件版本号例如以下: Intellij Idea 2017.1 Mave ...
- Android - include属性用法
include属性用法 本文地址: http://blog.csdn.net/caroline_wendy Android的layout中, 能够使用include属性样式, 这样能够把不同的layo ...
- Spring学习笔记(三)之装配Bean
除了组件扫描与自动装配之外还有基于Java代码的装配与基于XML的装配. 有一些场景是我们不能用自动装配的,比如我们要给第三方库中的组件装配到我们的应用中,这时自动装配无效,因为自动装配只能扫描本应用 ...
- 在Visual Studio Code中开发Office Add-in
作者:陈希章 发表于 2017年7月13日 上一篇 我介绍了如何在Visual Studio中开发Office Add-in,因为有标准的项目模板,一系列配套的工具,尤其是自带的一键调试功能,可以让开 ...
- strus2项目中百度编辑器运用的几点细节
百度编辑器的运用可以参考我之前写的一篇文章,在java项目中加入百度富文本编辑器.这篇文章是以maven+spring mvc项目进行的,总得来说配置比较简单,但是如果是想在strus2项目中配置ue ...
- JavaScript获取浏览器版本等信息
** 不同浏览器版本可能存在差异,使用时请测试自己的环境 ** 测试时各个浏览器版本 IE: 11.953.14393.0 Edge: Microsoft Edge 38.14393.0.0;Micr ...
- solr集群的理解和配置(待更新)
solr部署在tomcat下,solr集群依赖tomcat集群和zookeeper集群: zookeeper:1.对象注册和发放中心,实现异步调用. 2.配置中心.(solrConfig.xml,sc ...
- ES6 二进制数组
二进制数组(ArrayBuffer对象.TypedArray视图和DataView视图)是JavaScript操作二进制数据的一个接口.这些对象早就存在,属于独立的规格(2011年2月发布),ES6将 ...
- cat/tac/more/less 命令详解
cat:(http://www.cnblogs.com/peida/archive/2012/10/30/2746968.html) *cat主要有三大功能:1.一次显示整个文件:cat filena ...