1. 程式人生 > >基於ASP.NET WebAPI OWIN實現Self-Host項目實戰

基於ASP.NET WebAPI OWIN實現Self-Host項目實戰

hosting 知識 工作 develop plist 簡單 eba 直接 sock

引用

寄宿ASP.NET Web API 不一定需要IIS 的支持,我們可以采用Self Host 的方式使用任意類型的應用程序(控制臺、Windows Forms 應用、WPF 應用甚至是Windows Service)作為宿主。

一、摘要

本期同樣帶給大家分享的是阿笨在實際工作中遇到的真實業務場景,請跟隨阿笨的視角去如何實現采用微軟的ASP.NET OWIN技術承載WebAPI服務,如果您對本期的教程內容感興趣,那麽請允許讓阿笨帶著大家一起學習吧!

廢話不多說,直接上幹貨,我們不生產幹貨,我們只是幹貨的搬運工。

技術分享
你想要的幹貨都在這

四、需求分析

4.1、上期回顧

上一期我們分享了基於開源SuperSocket實現客戶端和服務端通信項目實戰實現了WEB網頁提交打印數據給WEB服務端,WEB服務端將接受的打印數據通過Socket通訊服務器推送給指定的客戶端。

我們能否簡化上面的調用過程步驟呢?

直接讓客戶端將打印數據給本地的客戶端,而無須再通過Socket通訊服務器進行中轉。

4.2、原理圖

技術分享
原理圖

4.3那麽我們今天要解決的問題可以總結為下面的一句話:

如何讓WEB網頁端直接以HTTP方式訪問本地桌面客戶端,就像訪問遠程IIS上的Web應用程序一樣?

4.4

實現WEB應用程序的Self-Host解決方案

通過HttpListener實現簡單的Http服務(.NET 2.0+)

基於WCF堆棧的自宿主SelfHosting

采用ASP.NET HttpSelfHost來承載WebAPI服務 (.NET 4.0+)

采用ASP.NET OWIN來承載WebAPI服務(.NET4.5微軟推薦使用)

等等......

五、涉及覆蓋的知識點

ASP.NET WebAPI HttpSelfHost/OWIN 如何以桌面應用程序方式,宿主承載WebApi服務;

ASP.NET WebAPI HttpSelfHost/OWIN 如何讓服務端支持CROS跨越訪問;

IE10.0 以下瀏覽器通過XDomainRequest實現CORS訪問;

基於ASP.NET WebAPI OWIN實現Self-Host項目實戰