azure-functions - 使用 Azure 函数及其协商函数连接到无服务器 Azure SignalR 服务
问题描述
我将无服务器 Azure Functions (NodeJs) 集成到无服务器 Azure SignalR 服务中。
我可以通过 Azure 函数中的协商函数将 Javascript 很好地连接到 SignalR。
下面的连接被初始化到我的函数应用程序,它为它返回 signalR uri 和 accessToken,@microsoft/signalr 库知道如何使用它,它使用它们在内部连接到 signalR
const appUri: string = process.env.FUNCTION_APP_URI as string
const connection: HubConnection = new HubConnectionBuilder()
.withUrl(appUri)
.build()
connection.on('newMessage', (message) => console.log(message))
connection.start()
.then(() => console.log('SignalR listener started.'))
.catch(console.error)
一切正常。
但是我如何从 .Net Core 控制台应用程序中执行相同的操作?
.Net Core 也可以使用相同的协商功能吗?还是我必须直接连接到 signalR?哪个库是正确的:
- Microsoft.AspNetCore.SignalR.Client
- 微软.Azure.SignalR;
- 其他?
解决方案
我将无服务器 Azure Functions (NodeJs) 集成到无服务器 Azure SignalR 服务中。
请注意,仅当您通过 Azure Functions 绑定或 REST API 使用 Azure SignalR 服务时,才将服务模式设置设置为无服务器。
有关 Azure SignalR 服务的服务模式的更多信息,请查看:
https://docs.microsoft.com/en-us/azure/azure-signalr/concept-service-mode
此外,该文档展示了如何从控制台应用程序广播实时消息,您可以参考它。
https://docs.microsoft.com/en-us/azure/azure-signalr/signalr-quickstart-rest-api
推荐阅读
- javascript - 按类名获取图像的每个 ID
- text-files - 来自两个文本文件的项目配对
- java - 文本操作基本 Java
- java - 对字符串数组进行 for 循环
- vhdl - 在嵌套的 If-Else 语句 (VHDL) 中推断锁存器
- r - 在 R 中使用 distinct() dplyr 删除重复项
- spring-boot - Spring Boot 2.1.1 无法在 Intellij 2018.1 中运行
- python - 使用 OpenCV Python 更改视频中的单色
- python - Anaconda安装使用了所有空间,如何再次释放空间?
- batch-file - 如何保持一个进程(在本例中为 scrnsave.scr)在所有其他窗口之上运行,使它们在后台运行?