【问题标题】:Azure SignalR API Add to GroupAzure SignalR API 添加到组
【发布时间】:2019-03-05 10:09:46
【问题描述】:

我一直在使用 Azure SignalR API 向群组、所有人和单个用户发送消息。

我在将用户添加到组时遇到问题。

我按照要求执行请求 https://docs.microsoft.com/en-us/azure/azure-signalr/signalr-quickstart-rest-api#add-user-to-group,当我得到成功响应时,用户并未添加到组中。

var url = "xxx.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<userid>"

var request = new HttpRequestMessage(HttpMethod.Put, _azureSignalRUtilities.GetUrl(url));

request.Headers.Authorization = new AuthenticationHeaderValue("Bearer",
            _azureSignalRUtilities.GenerateAccessToken(url, _serverName));
request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

我已经从 https://github.com/aspnet/AzureSignalR-samples/tree/master/samples/Serverless

【问题讨论】:

  • 响应是什么样的?它只是一个“200”吗?
  • @Rthomas529 是 200 接受
  • 双重检查请求中的方法是 PUT 吗?回复正文中有任何信息吗?
  • @mathew 我希望发布的答案能解决您的问题
  • @RahulRuikar 感谢您的回复。但仍然无法正常工作。我看不到原始样品的任何变化。你有什么改变?

标签: azure azure-signalr signalr-service


【解决方案1】:

通过对示例应用程序进行一些更改并添加新方法以从组中添加/删除用户,我能够将特定用户添加/删除到组并向该组发送消息。

我在此示例中将组名硬编码为“TestGroup”

客户端输出

启动了 2 个客户端“123”和“456”

服务器输出

  1. 只有用户“123”被添加到组“TestGroup”
  2. 消息发送到组“TestGroup”,只有“123”接收到
  3. 用户“123”已从组中删除。

示例代码存在一些问题。

  1. 消息再次发送到组,但没有用户属于 “TestGroup”,没有任何用户收到。

我已经修改了示例应用程序,为此添加了 2 个方法 将用户添加到组 从组中删除用户 还更正了“发送组”

注意:我发现组名是区分大小写的

完整的代码在这个存储库中可用 https://github.com/rahulruikar/Serverless

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多