函数'SignalR'的侦听器无法启动。使用signalr绑定Azure函数

问题描述 投票:2回答:1

我正在开发将IOT设备与Azure IOT集线器连接的应用程序。并且其实时数据可以在网络视图上看到。但是,我遇到一个错误,我试图将数据Azure函数与SignalR绑定,但是当我运行该应用程序时,我收到以下错误消息。

函数'SignalR'的侦听器无法启动。 Microsoft.Azure.EventHubs.Processor:提取EventHub PartitionIds列表时遇到错误。 System.Private.CoreLib:链接地址'$ management'与任何期望的格式都不匹配。

Error Description Image

我已经尽力修复了所有问题,但每次都失败。如果有人能帮助我找到此问题的解决方案,我将非常感谢。

这是我从此link开始使用的脚本

这是我的SignalR.cs

 public static class SignalR
{
    [FunctionName("SignalR")]
    public static async Task Run(
        [IoTHubTrigger("messages/events", Connection = "IoTHubTriggerConnection", ConsumerGroup = "$Default")]EventData message,
        [SignalR(HubName = "broadcast")]IAsyncCollector<SignalRMessage> signalRMessages,
        ILogger log)
    {

        var deviceData = JsonConvert.DeserializeObject<DeviceData>(Encoding.UTF8.GetString(message.Body.Array));
        deviceData.DeviceId = Convert.ToString(message.SystemProperties["iothub-connection-device-id"]);


        log.LogInformation($"C# IoT Hub trigger function processed a message: {JsonConvert.SerializeObject(deviceData)}");
        await signalRMessages.AddAsync(new SignalRMessage()
        {
            Target = "notify",
            Arguments = new[] { JsonConvert.SerializeObject(deviceData) }
        });
    }
}

这是我的SignalRConnection.cs

    public static class SignalRConnection
{
    [FunctionName("SignalRConnection")]
    public static SignalRConnectionInfo Run(
        [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = null)] HttpRequest req,
        [SignalRConnectionInfo(HubName = "broadcast")] SignalRConnectionInfo info,
        ILogger log) => info;
}

这是我的local.settings.json文件

    {
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
    "AzureSignalRConnectionString": "",
    "MSDEPLOY_RENAME_LOCKED_FILES": 1,
    "IoTHubTriggerConnection": ""
  },
  "Host": {
    "LocalHttpPort": 7071,
    "CORS": "*"
  }
}

对于IoTHubTriggerConnection,我正在使用iothubjohnsoncontrol的连接字符串(如下图所示)。>>

IOT Hub Keys Image

对于AzureSignalRConnectionString,我正在使用signalrjohnsoncontrol的连接字符串(如下图所示)。

SignalR Keys Image

我正在开发将IOT设备与Azure IOT集线器连接的应用程序。并且其实时数据可以在网络视图上看到。但是,我遇到了一个错误,我正在尝试绑定数据...

azure signalr azure-functions real-time azure-iot-hub
1个回答
0
投票

您能否从此处检查是否提供了EventHub兼容名称和EventHub兼容连接字符串enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.