gpt4 book ai didi

c# - Mono 上的 SignalR 和 Websockets

转载 作者:可可西里 更新时间:2023-11-01 03:10:08 25 4
gpt4 key购买 nike

我已经进行了数小时的搜索,试图弄清楚为什么 websockets 传输无法通过信号器在我的 c# 4.5 应用程序上通过 mono 4.0.1 在 linux 上运行。

我项目中的引用:

  • Microsoft.Owin.Host.HttpListener
  • Microsoft.Owin.Host.SystemWeb

现在,我正试图找出阻止 websockets 工作的瓶颈所在。我的理解是,SystemWeb 基本上是一个自运行服务器,它利用 Httplistener 监听 HTTP 连接的端口,然后处理它们直到 系统网。我的这一部分是否正确?

有人可以为我指明正确的方向以解决当前正在开发的未解决问题或错误跟踪器吗?据我所知,http.sys 中有一些核心功能来自 this answer在 Windows 8 中是必需的和存在的。是否有计划在单声道中实现它?我不想获得一些第三方库,而是希望它在 SignalR 中运行。

最佳答案

大约 3 个月前,我对 Angular 2 和 Singnalr 的项目进行了类似的调查。我希望 Web 套接字的使用对您的项目来说不是必需的。

如你所见here一位 Xamarin 开发人员表示,它无法正常工作,因为 System.Web.WebSocket 未在 Mono 中实现他们目前不打算实现它。

I believe there's a lot of work going on with mono's http stack right now and that probably needs to stabilize before we see this particular issue resolved.

我建议继续使用当前的 mono,因为 signalr 有 websockets 的回退,这不会是一个大问题,当它实现为 mono 时,您可以简单地更新您的项目。根据当前 MS 的开源政策,我相信它会比预期的更快。

如果您的项目需要 websocket 功能,那么您应该立即 fork SignalR 或找到使用第 3 方解决方案的 fork 版本 WebSocketListener非常受欢迎,而且功能更多。

I'd encourage anyone interested to fork SignalR and see if they can use one of these xplat websockets implementations to get it working in their own fork.

更新:

不幸的是,我找不到带有 WebSocketListener 的 SignalR 的任何分支,但由于它有很多分支,所以很难找到。

据我所知,Mono 团队几乎停止了所有实现并专注于 ASP.Net vNext 实现到 Mono因为它是open source .

关于c# - Mono 上的 SignalR 和 Websockets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30452890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com