基於ASP.NET WebAPI OWIN實現Self-Host項目實戰
引用
寄宿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、
通過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項目實戰