微軟最新的Web服務器Katana發布了版本3
英文原文:Microsoft’s new Web Server, Katana, Hits Version 3
Katana 是微軟對 OWIN(基于 .NET 的開放 Web 接口)標準自行開發的一套實現方案,它是一種相對于 IIS 及 System.Web 命名空間的輕量級實現,這也是由于 IIS 及 System.Web 命名空間包含了某些無用的特性,或是某些設計不太理想。隨著版本 3 的發布,Kanata 目前已經完整地支持了 .NET 4.5 中新加入的異步編程模型。
微軟同時決定在 Katana 中放棄對 .NET 4.0 的支持,這一點并不令人驚奇。盡管 ASP.NET 從十年前就已經開始支持異步編程模型,但.NET 2.0 中引入的 IAsyncResult 模型使用起來非常繁瑣,大多數開發者甚至都不知道它的存在。Node.js 趁虛而入,它將自己稱為高級異步 web 開發平臺,而微軟則希望通過在 .NET 4.5 中引入的 async/await 模型重新奪回這一稱號。
此外,微軟也希望讓開發者們能夠在 2016 年初這一時間前放棄舊的版本,以此大大減少對這些版本的巨大維護量。為了促進這一目標的實現,微軟明確宣布,新的 API 在 .NET 4.0 版本上將不可用。
在新的功能特性方面,新版本主要關注于“企業級認證功能以及基于聲明的標識(claims-based identity)”。參與了 Katana 3項目的 Vittorio Bertocci 特別提到了以下三種協議:
- WS-Federation
- OpenId Connect (通過表單提交方式提供 id_token 以及 id_token+code 方式)
- 可在 Web API 中使用的 OAuth2 票據令牌認證 </ul>
- Microsoft.Owin – 提供了一組輔助類型,以及為簡化創建 OWIN 組件而建的各種抽象類型。
- Microsoft.Owin.Diagnostics – 提供了各種中間件組件,以輔助開發基于 OWIN 的應用程序。
- Microsoft.Owin.FileSystems – 這個包里提供了文件系統相關的抽象與實現。
- Microsoft.Owin.Testing – 提供了對 OWIN 組件進行單元測試的一些輔助類。
- Microsoft.Owin.SelfHost – 包含了為在自行指定的進程中托管基于 OWIN 的應用程序所必需的一些組件。
- Microsoft.Owin.Hosting – 提供了托管與運行基于 OWIN 的應用程序所需的默認基礎框架類型。
- OwinHost – 提供了一個單獨的可執行程序(OwinHost.exe),通過它可以托管一個基于 OWIN 的應用程序的運行。
- Microsoft.Owin.Cors – 這個包里包含了一些能夠在 OWIN 中間件中進行跨域資源共享(CORS)的組件。
- Microsoft.Owin.StaticFiles – 這個包里包含了一些 OWIN 中間件,能夠處理來自于文件系統資源的請求,包括文件與目錄。
- Microsoft.Owin.Security – 包含了一些各種不同的認證中間件組件所共享的通用類型。
- Microsoft.Owin.Security.ActiveDirectory – 一組允許應用程序使用微軟技術進行認證的中間件。
- Microsoft.Owin.Security.Cookies – 允許應用程序使用基于 cookie 進行認證的中間件,類似于 ASP.NET 中的表單認證方式。
- Microsoft.Owin.Security.非死book – 允許應用程序支持 非死book 所使用的 OAuth 2.0 認證工作流的一些中間件。
- Microsoft.Owin.Security.Google – 包含了一組支持 Google 的 OpenId 及 OAuth 2.0 認證工作流的中間件。
- Microsoft.Owin.Security.Jwt – 一組允許應用程序保護及驗證 JSON Web 令牌的中間件。
- Microsoft.Owin.Security.MicrosoftAccount – 一組允許應用程序支持微軟帳號認證工作流的中間件。
- Microsoft.Owin.Security.OAuth – 允許應用程序支持任何標準 OAuth 2.0 認證工作流的中間件。
- Microsoft.Owin.Security.OpenIdConnect – 允許應用程序使用 OpenIdConnect 方式進行認證的中間件。
- Microsoft.Owin.Security.推ter – 允許應用程序支持 推ter 的 OAuth 2.0 認證工作流的中間件。
- Microsoft.Owin.Security.WsFederation – 允許應用程序使用 WsFederation 進行認證的中間件。
- Microsoft.Owin.Host.HttpListener – 基于 .Net Framework 中的 HttpListener 類創建的 OWIN 服務器,也是目前用于自托管的默認服務器。
- Microsoft.Owin.Host.SystemWeb – 也是 OWIN 服務器實現,但它允許基于 OWIN 的應用程序運行在 IIS 中,并能夠使用 ASP.NET 的請求管道。 </ul>
Vittorio 還寫道:
這個版本的發布還解決了由于 推ter 和 Google API 發生變動所引起的問題。如果你在應用中使用了 Google 認證,并且打算升級到 Katana 版本3,請確保你已讀過這篇帖子!
</blockquote>Katana 可以作為 NuGet 包獲得。根據 Katana 網站描述顯示,取決于你所需的不同特性,共有總數超過 20 的包可以選擇下載:(這一點和傳統的 ASP.NET 形成了鮮明的對比,后者的方式是將幾乎所有特性都堆積在一個龐大的程序集中。)
來自: InfoQ<span id="shareA4" class="fl"> </span>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!