如何解决RSocket 控制器向 IIS 托管的 SignalR 客户端发送 Reactor Flux 消息,但未收到任何消息
在开发环境中,本地 IIS 和 SignalR 客户端 Web 应用程序创建与 Spring Boot RSocket 服务器的会话,并且消息流工作正常。
部署到另一台服务器并安装全新的 IIS 后,signalR 客户端可以向服务器发送消息,创建从 IIS 端口 6060 到服务器配置端口 X
(而不是 8082)的会话。
但是,在 spring boot reactor Flux
将端口 X
上的消息发送回 signalR 客户端后,客户端没有收到消息。
就好像 IIS 和 signalR 可以触发并忘记向端口 X
发送消息,但无法获得端口 X
可以回复的会话。
谁能解释一下发生了什么?
解决方法
在另一台演示服务器上全新安装 IIS <-> SignalR <-> RSockets <-> WebFlux
消息堆栈后,似乎发生了同样的错误。虽然没有运行 TCP 数据包捕获来检查与 Wireshark 的发送/接收消息情况。
首先,根据 SignalR .Net Core 3.1 Web Application not working on local IIS IIS WebSockets 功能没有打开。
然后,根据 SignalR 2.2 returns 404 Not Found on IIS 8.5 对服务器的请求返回 404 错误。在 /
中的 JSON 日期字符串中发现 urlAPI
导致调用
using (_myStream = new StreamReader(await client.GetStreamAsync(urlAPI)))
在 urlAPI
中查找另一个不存在的端点,从而产生 HTTP 404 错误。所以这是由于 URL 格式错误造成的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。