基于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、实现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访问;
作者:阿笨
【官方QQ一群:跟着阿笨一起玩NET(已满)】:422315558
【官方QQ二群:跟着阿笨一起玩C#(已满)】:574187616
【官方QQ三群:跟着阿笨一起玩ASP.NET(已满)】:967920586
【官方QQ四群:Asp.Net Core跨平台技术开发(可加入)】:829227829
【官方QQ五群:.NET Core跨平台开发技术(可加入)】:647639415
【网易云课堂】:https://study.163.com/provider/2544628/index.htm?share=2&shareId=2544628
【腾讯课堂】:https://abennet.ke.qq.com
【51CTO学院】:https://edu.51cto.com/sd/66c64
【微信公众号】:微信搜索:跟着阿笨一起玩NET