ASP.NET MVC Owin 基本理解

1、OWIN  安全

  OWIN(Open Web Interface for .Net),定义了一个服务器(IIS)和Web应用程序(MVC,Webform)通讯的标准接口,而且经过抽象层使得这两个在微软平台结合紧密的组件彼此解耦。经过将Web服务器从应用程序解耦,使得为.NET Web开发建立中间件和移植Web应用程序到其余托管——好比,Window服务或其余进程的自我托管——变得更加容易,使得便携式 .NET Web 应用以及跨平台的愿望成为现实, 标准的 OWIN 应用能够在任何 OWIN 兼容的服务器上运行, 再也不依赖与 Windows 和 IIS ,没有 Windows , 更没有 IIS , OWIN 应用就能正常运行。服务器

  主要包括如下组件:框架

  服务器 (Server)spa

    HTTP 服务器直接与客户端交互, 并用 OWIN 语义处理请求,服务器须要一个适配层将客户请求转换 成 OWIN 语义。 支持 OWIN 的服务器有 Katana 和 Nowin ,orm

       Web 框架 (Web Framework)中间件

    构建在 OWIN 之上的自包含的独立组件, 向 Web 应用提供可用的对象模型或者接口。 Web 框架可 能须要一个适配层来转换 OWIN 语义。 支持 OWIN 的 Web 框架有:对象

    • Nancy
    • SignalR
    • WebApi
    • FubuMVC
    • Simple.Web
    • DuoVia.Http

  Web 应用 (Web Application)
    一个特定的 Web 应用, 一般构建在 Web 框架之上, 使用 OWIN 兼容的服务器运行。
  中间件 (Middleware)
    特定目的的服务器和应用之间的可插拔组件, 能够监视、 路由、 修改请求与响应。
  宿主 (Host)
    应用与服务器所在的进程, 主要负责应用的启动, 有些服务器自身也是宿主, 好比 Nowin 。blog

 

2、Katana接口

  OWIN是一组规范,没有具体的实现,katana就是微软对OWIN规则的一组实现,其包含组件,包含了ASP.NET的Microsoft.Owin.Host.System.Web、自托管的环境(控制台,服务)的Microsoft.Owin.Host.HttpListenter 监听,还包括中间件模块主要有:进程

  Microsoft.Owin.Compression(压缩模块)

  Microsoft.Owin.Cors(跨源资源共享模块)

  Microsoft.Owin.Security.*(安全模块)

  Microsoft.Owin.StaiticFiles(静态文件访问模块)

  这些OWIN 组件都是经过经过 NuGet 包的形式发布,与.NET框架版本分离,不出如今添加引用的界面内。

  另外,OWIN的实现还有 Freya、ASP.NET vNext。

相关文章
相关标签/搜索