node.js - 绑定类型“signalR”未注册
问题描述
一天前我让它工作了,我不确定发生了什么变化,但是现在当我运行时func start
,我的 SignalRnegotiate
和messages
nodejs 函数出现以下错误。我尝试安装功能核心工具 v2 和 v3,但问题仍然存在。我很感激任何帮助!
主机.json
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[1.*, 2.0.0)"
}
}
local.settings.json
{
"IsEncrypted": false,
"Values": {
"AzureSignalRConnectionString": "<endpoint>",
"FUNCTIONS_WORKER_RUNTIME": "node"
},
"Host": {
"LocalHttpPort": 7070,
"CORS": "http://localhost:4200",
"CORSCredentials": true
}
}
协商功能
module.exports = async function (context, req, connectionInfo) {
context.res.json(connectionInfo);
};
消息功能
module.exports = async function (context, req) {
return {
"target": "newMessage",
"arguments": [ req.body ]
};
};
解决方案
我刚刚测试了此链接中提供的 nodejs 示例,它运行良好。
步骤是
1.下载项目。
2.重命名local.settings.sample.json
为local.settings.json
3.在local.settings.json
中,将连接字符串粘贴到AzureSignalRConnectionString设置的值中。
根据您提供的错误消息,请确保您的 SignalR 服务的服务模式为无服务器。请检查文件中的CORS配置local.settings.json
。
如果您仍然遇到“未注册绑定类型“signalR”的问题,您可以尝试删除文件中的extensionBundle设置host.json
并再次运行。它将自动安装 SignalRService 扩展。
这样,您可能需要在文件中添加AzureWebJobsStorage设置。local.settings.json
推荐阅读
- jquery - 如何将jquery代码转换为reactjs
- vue.js - 使用 ag-grid 为过滤器配对键值
- reactjs - React Router V4 - 刷新时出现 404 错误 - Nginx 问题?
- linux - 已安装的 glib 未列在已安装的软件包下
- python - 即使在“安装成功”消息之后,Python 包仍然在 Intellij 中标记为未安装
- php - Laravel 5.6 - 将 mySql 数据库备份到 S3?
- angular - 将 JSON 转换为 Typescript 接口,包括 Date 方法
- c# - 如何使用 EmguCV 同时查看和录制视频?
- php - 如何设置从 Git 存储库中提取的 Laravel/Lumen 项目(使用 composer)?
- c# - Setter 不断递归调用自己