是否可以从邮递员致电SignalR集线器

时间:2019-06-06 09:11:35

标签: signalr postman asp.net-core-webapi signalr-hub signalr.client

我有一个带SignalR集线器的ASP .Net Core 2.2 Web API。是否可以使用邮递员调用其方法之一(例如,SendMessageToAll)?问题是我只有API-没有前端-我需要测试。

我尝试将URl放到邮递员(api.mydomain.com/chatHub)的集线器中,但是后来我不确定如何构造尸体。我知道SignalR最好使用WebSockets,而且我不知道PostMan是否具有WebSocket功能。我相信,如果WebSockets不可用,SignalR也可以执行HTTP请求,而Postman可以做到这一点。但是我要用什么身体?并使用HTTP GET或POST吗?

我在Postman上看到一个人正在使用此尸体的帖子:

{
    "Target": "SendMessageToGroup",
    "Arguments": [
        "groupA",
        "hello from server"
    ]
}

所以我尝试了相同的操作,但是当我在邮递员上单击“发送”时,集线器的SendMessageToGroup方法不会被触发。

enter image description here

谢谢

3 个答案:

答案 0 :(得分:2)

不,邮递员不支持websocket。 如果只是将集线器注入到控制器中,则可以使用集线器的方法,并从post man中的http请求中调用它的公共方法。 或使用其他应用程序: https://stackoverflow.com/a/59543405/4751073

答案 1 :(得分:1)

现在可以使用 Postman 版本 > 8.0 使用 WebSocket 请求块。 您可以在他们的博客文章 https://blog.postman.com/postman-supports-websocket-apis/

中获取信息

答案 2 :(得分:0)

您可以使用简单的 SignalR 客户端桌面应用程序,我将其发布到 GitHub here

It's looks like this