【问题标题】:Azure SignalR Service Upstream not delivering messages to an Azure Function AppAzure SignalR 服务上游未将消息传递到 Azure 函数应用
【发布时间】:2020-11-12 17:10:02
【问题描述】:

我已经在 Azure 中设置了 SignalR 服务帐户。

我已将此设置为无服务器。

我已将上游 URL 设置为 https://THE-NAME-OF-MY-FUNC-APP.azurewebsites.net/runtime/webhooks/signalr?code=THE-DEFAULT-KEY-FROM-FUNC-APP-APPKEYS_HOST_DEFAULT

这在此处记录在规则设置下:https://docs.microsoft.com/en-us/azure/azure-signalr/concept-upstream#rule-settings

我在 Node/TypeScript 中创建了一个 AZ Functions 应用程序,其中我有一个具有 SignalRTrigger 输入和 SignalRMessages 输出的函数。考虑以下函数。

函数.js

{
  "bindings": [
    {
      "type": "signalRTrigger",
      "name": "invocation",
      "hubName": "mailbox",
      "category": "messages",
      "event": "heartbeat",
      "connectionStringSetting": "AzureSignalRConnectionString",
      "parameterNames":[
        "mailboxId"
      ],
      "direction": "in"      
    },
    {
      "type": "signalR",
      "name": "signalRMessages",
      "hubName": "mailbox",
      "connectionStringSetting": "AzureSignalRConnectionString",
      "direction": "out"
    }
  ],
  "scriptFile": "../dist/heartbeat/index.js"
}

还有 index.js

import { AzureFunction, Context } from "@azure/functions"

const heartbeatTrigger: AzureFunction = async function (context: Context, invocation: any): Promise<void> {
    context.log.info('Heartbeat function executed');
    let mbid = context.bindingData.mailboxId;

    // output a hearbeat received
    context.bindings.signalRMessages = [{
        "target": "heartbeatReceived",
        "arguments": [mbid]
    }];

};

export default heartbeatTrigger;

当我在 Vue 应用程序中使用 @aspnet/signalr 客户端时,我可以连接到 SignalR 集线器。

当我尝试使用 myConnection.send('heartbeat', '123') 时,我希望上面的函数会被调用。

这不会发生。我似乎无法触发该功能。

有人可以帮忙吗?

【问题讨论】:

    标签: node.js azure-functions signalr signalr-service


    【解决方案1】:

    我已经花了好几天的时间。

    终于在 GitHub 上看到了这个文档

    https://github.com/Azure/azure-functions-signalrservice-extension/tree/master/samples/bidirectional-chat

    这解释了如何让这一切正常工作 - 大块是需要使用的关键。 Signalr_extension!

    【讨论】:

      猜你喜欢
      • 2021-10-31
      • 1970-01-01
      • 2020-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-05
      • 2020-01-21
      相关资源
      最近更新 更多