首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从SignalR客户端调用服务器上的方法时出错

从SignalR客户端调用服务器上的方法时出错
EN

Stack Overflow用户
提问于 2022-11-23 12:05:42
回答 1查看 28关注 0票数 1

我有一个运行hub类的C#服务器,其中只包含一个方法,如下所示,

代码语言:javascript
运行
复制
public class HothHub : Hub
{
  public async Task AddSingleUserGroup(string name)
  {
    await Groups.AddToGroupAsync(Context.ConnectionId, name);
  }
}

我还有一个JavaScript客户端,它通过以下代码连接到集线器,

代码语言:javascript
运行
复制
var connection;

async function signalRStart() {
    connection = new signalR.HubConnectionBuilder()
        .withUrl("https://somesignalrurl.com/hothhub", { withCredentials: false })
        .withAutomaticReconnect()
        .configureLogging(signalR.LogLevel.Information)
    .build();

    connection.on("hothHubToHothUpdate", () => {
        console.log("Called by the server!");
    });

    connection.onreconnecting(error => {
        console.log("Connection lost due to error " + error + ". Reconnecting.");
    });

    // Start the connection.
    await start();
}

async function start() {
    try {
        await connection.start();
        connection.invoke("addSingleUserGroup", "someUniqueUserName");
    } catch (err) {
        console.log(err);
        setTimeout(start, 5000);
    }
};

现在,当客户端启动连接并在自身上运行start()时,这个部分似乎运行良好。成功地连接到signalR集线器。我遇到的问题是connection.invoke("addSingleUserGroup", "someUniqueUserName");何时运行,尽管错误并不总是发生。在第一次运行时,服务器端的方法将被成功命中,但是它看起来像是后续的调用失败,这是客户端返回的错误,

代码语言:javascript
运行
复制
Uncaught (in promise) Error: Failed to invoke 'addSingleUserGroup' due to an error on the server. HubException: Method does not exist.
    at _callbacks.<computed> (signalr.js:1252:36)
    at HubConnection._processIncomingData (signalr.js:1364:33)
    at HubConnection.connection.onreceive (signalr.js:985:52)
    at webSocket.onmessage (signalr.js:2236:30)

我在这里读过几篇文章,但大多数文章似乎都与客户端调用错误的方法名称有关,在调用方法名称的开头使用了大写字母,还有一些文章提到了方法期望1类型参数并接收另一种类型的问题,尽管在我的示例中,很难想象服务器如何不将传入的参数视为字符串,这就是传递的内容。有人对这里可能出了什么问题或者我可以尝试什么有任何想法吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2022-11-29 16:24:41

不幸的是,我没有一个真正的答案,但在部署解决方案到我的Azure应用服务,发行版不会产生错误。似乎只有在调试模式下,错误才会持续存在,但正如我所说,我不确定原因。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74546522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档