【问题标题】:RSocket controller sending Reactor Flux message to IIS hosted signalR client but nothing is receivedRSocket 控制器向 IIS 托管的 signalR 客户端发送 Reactor Flux 消息,但没有收到任何内容
【发布时间】:2021-02-24 16:26:40
【问题描述】:

在开发环境中,本地 IIS 和 signalR 客户端 Web 应用程序创建与 Spring Boot RSocket 服务器的会话,并且消息流工作正常。

部署到另一台服务器并全新安装 IIS 后,signalR 客户端可以向服务器发送消息,创建从 IIS 端口 6060 到服务器配置端口 X(而不是 8082)的会话。

但是,在 spring boot reactor Flux 将端口 X 上的消息发送回 signalR 客户端后,客户端没有接收到消息。

就好像 IIS 和 signalR 可以触发并忘记向端口 X 发送消息,但无法获得端口 X 可以回复的会话。

谁能解释发生了什么?

【问题讨论】:

    标签: signalr rsocket


    【解决方案1】:

    在另一台演示服务器上全新安装 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 错误。在 urlAPI 的 JSON 日期字符串中发现了 / 导致调用

    using (_myStream = new StreamReader(await client.GetStreamAsync(urlAPI)))

    urlAPI 中查找另一个不存在的端点,从而产生 HTTP 404 错误。这是由于 URL 格式错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-22
      • 2016-08-25
      • 2016-09-19
      • 1970-01-01
      • 2017-09-02
      相关资源
      最近更新 更多