webapi框架搭建-创建项目(三)-webapi owin
webapi框架搭建系列博客
owin介绍
以iis为宿主
using Microsoft.Owin;
using Owin;
using System.Threading.Tasks;
// 标识webapiOwin.Startup类为owin的启动类,也可写在AssemblyInfo.cs文件里
[assembly: OwinStartup(typeof(webapi.Owin.Startup))]namespace webapi.Owin
{public class Startup{/// <summary>/// owin的http请求管道配置函数/// </summary>/// <param name="app"></param>public void Configuration(IAppBuilder app){// 有关如何配置应用程序的详细信息,请访问 https://go.microsoft.com/fwlink/?LinkID=316888app.Run(context =>{context.Response.Write("这个owin管道");return Task.FromResult(0);});}}
}
编译后测试接口地址:http://localhost:101/api/test
owin自宿主
owin的四大结构为Host,Server,Middleware,Application。用自宿主的方式可完全抛开iis。
using Microsoft.Owin.Hosting;
using System;namespace MyOwinSelfHost
{class Program{static void Main(string[] args){// WebApp.Start<Startup>和WebApp.Start都可以用,建议用后者,这样通用性强。OwinHost.exe就是用这种方法// 区别为:// 如用WebApp.Start<Startup>则要引用Startup类所在的项目// 如用WebApp.Start,则生成的控制台程序的当前目录下要有含[assembly: OwinStartup(xxx)]才能正常运行//using (WebApp.Start<Startup>("http://localhost:12345"))using (WebApp.Start("http://localhost:12345")){Console.ReadLine();}}}
}
运行
owin和webapi
参考官方文档:
步骤
public void Configuration(IAppBuilder app){// 有关如何配置应用程序的详细信息,请访问 https://go.microsoft.com/fwlink/?LinkID=316888app.UseWebApi(WebApiConfig.OwinWebApiConfiguration(new HttpConfiguration()));}
WebApiConfig如下,只要看OwinWebApiConfiguration方法里的就行。
using System.Web.Http;namespace webapi.Configs
{/// <summary>/// webapi 配置类/// </summary>public static class WebApiConfig{/// <summary>/// 做为委托提供给System.Web.Http.GlobalConfiguration.Configuration()/// 用于webapi以iis为服务器的情况/// </summary>/// <param name="config"></param>public static void Register(HttpConfiguration config){// Web API 配置和服务// Web API 路由config.MapHttpAttributeRoutes();config.Routes.MapHttpRoute(name: "DefaultApi",routeTemplate: "api/{controller}/{id}",defaults: new { id = RouteParameter.Optional });}/// <summary>/// 返回webapi的httpconfiguration配置/// 用于webapi应用于owin技术时使用/// </summary>/// <returns></returns>public static HttpConfiguration OwinWebApiConfiguration(HttpConfiguration config){config.MapHttpAttributeRoutes();//开启属性路由config.Routes.MapHttpRoute(name: "DefaultApi",routeTemplate: "api/{controller}/{id}",defaults: new { id = RouteParameter.Optional });return config;}}
}
运行
转载于:https://www.cnblogs.com/shengyu-kmust/p/8258693.html
webapi框架搭建-创建项目(三)-webapi owin相关推荐
- 一步一步使用ABP框架搭建正式项目系列教程之本地化详解
返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 本篇目录 扯扯本地化 ABP中的本地化 小结 扯扯本地化 本节来说说本地化,也有叫国际化.全球化的,不管怎么个叫法,反正道理都是一 ...
- ExtAspNet学习-利用AppBox框架快速创建项目(五)—完成项目含源代码
我们前边四个部分已经完成了框架需要的基础配置, 现在我们来完成项目 1.Subsonic 配置,首先在OraSurvey.DAO中添加App.config配置相关信息 View Code 1 < ...
- C#项目实战WebApi框架搭建以及部署WebApi服务器的几种方式
1. Api接口的定义: API应用程序编程接口是一些预先定义的接口,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节. 操作系统想了一个 ...
- SSM框架搭建及项目实战
(可通过图片水印查看博客地址) 1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Ex ...
- CGB2005 JT-1(jt概述 SqlYog 物理模型图PD 表结构 pom文件标签说明 jt环境搭建 创建项目2种,创建各种文件 idea导入,打包,删除项目,启动原理)
注意事项: 1.京淘项目概述和动吧项目缺点描述 2.把sql文件导入数据库:通过SqlYog可视化工具或者Dos命令窗口. 3.SqlYog说明,和制作物理模型图的工具pd用发. 4.表结构学习 5. ...
- 从零开始搭建SpringBoot项目(三)——小程序Uni-app项目搭建(详细教程和实战)
前情回顾 从零开始搭建SpringBoot项目(一)--开发环境搭建 从零开始搭建SpringBoot项目(二)--Swagger接口测试平台搭建 目录 前情回顾 一.前置条件 二.本篇介绍 三.获取 ...
- 自学Python第二十二天- Django框架(一)创建项目、APP、快速上手、请求和响应流程、模板、数据库操作
Django 框架是一个基于 python 的重量级的 web 开发框架,现今很多大公司大项目都是使用 Django 框架.采用了 MVC(model view controller) 的框架模式,p ...
- 基于若依框架搭建商业项目
RuoYi 若依官方网站 |后台管理系统|权限管理系统|快速开发框架|企业管理系统|开源框架|微服务框架|前后端分离框架|开源后台系统|RuoYi|RuoYi-Vue|RuoYi-Cloud|RuoY ...
- SpringMVC(SSM)框架搭建JavaWeb项目时,前端页面文件上传,后台Java下载功能实现及相关问题记录说明
看在前面:前端页面通过input控件实现文件上传,后台Java使用SpringMVC框架的实现网上有较多教程,但是真正配置一遍下来不报错的较少,所以本博客前面先介绍一遍完整的设置步骤,然后介绍遇到的一 ...
最新文章
- PHP分页类(较完美)
- 实现java多线程的3种方式,99%人没用过第3种
- 这些高校竟因名字太“坑爹”被误会为三本?盘点九所实力强劲但被名字耽误的大学...
- mybatis字符串转成数字_Python字符串三种格式化输出
- 用例设计工具PICT — 输入组合覆盖
- 清理垃圾代码bat_电脑一键清理垃圾图文详解
- 鲲鹏云实验-Python+Jupyter机器学习基础环境
- Python的主要功能是什么?
- javascript中组合使用构造函数模式和原型模式创建对象
- mysql怎么模拟死锁_mysql 模拟产生死锁
- 免费jar包最全下载网站
- [ CSOL - CLS ] 活动网站 map area
- [Android]SurfaceView绘制奔跑的小人
- Java 第十一届 蓝桥杯 省模拟赛 元音字母辅音字母的数量
- 编译原理-LL(1)语法分析器
- 迎虎年新春诗会—欢迎赐玉 不拘一格
- Android仿微信图片编辑处理:文字,马赛克,裁剪,涂鸦,旋转图片等
- 余有成人工智能_中国人工智能学会
- 详细Redis入门教程
- 调试DuerOS的智能语音技能
热门文章
- Tbase基础积累二之数据迁移工具dbbridge
- 服务器的ip端口加密协议混淆,Obfsproxy - 混淆/加密端口数据
- 苹果Mac系统设置任何来源安装第三方软件
- Elasticsearch-ais使用方式
- java基础-head first java
- c++成员函数指针的本质
- 【加密】对称加密DES和非对称加密AES、数字签名|非对称加密--公钥和私钥的区别
- 模糊查询和sql语句的拼接
- remote couldn‘t create file: Read-only file system (remount failed)解决方法
- Reverses the digits of an integer mathmatically