signalR(协商函数)的 Azure 函数绑定错误(500 错误代码)
Azure Function binding error for signalR (negotiate function) (500 error code)
我正在使用 Azure 函数和 signalR 创建实时聊天。它在本地工作得很好,但是部署的 "negotiate" 功能不起作用。
协商函数(index.js)
module.exports = function (context, req, connectionInfo) {
context.res = { body: connectionInfo };
context.done();
}
配置文件(function.json)
{
"disabled": false,
"bindings": [
{
"authLevel": "anonymous",
"type": "httpTrigger",
"direction": "in",
"name": "req"
},
{
"type": "http",
"direction": "out",
"name": "res"
},
{
"type": "signalRConnectionInfo",
"name": "connectionInfo",
"hubName": "chat",
"direction": "in",
"connectionStringSetting": "AzureSignalRConnectionString"
}
]
}
AzureSignalRConnectionString 在函数应用程序属性中设置。
我还尝试使用 "connectionString" 而不是 "connectionStringSetting" 并使用连接字符串而不是 "AzureSignalRConnectionString" 引用,以及我们这里的所有 4 种可能组合。
如果我 运行 Azure 门户中的函数,我会收到此错误:
[Error] Executed 'Functions.negotiate' (Failed, Id=0ac24b1f-1ab0-40f5-9680-34db547e1cc9)
Unable to resolve the value for property 'SignalRConnectionInfoAttribute.ConnectionStringSetting'. Make sure the setting exists and has a valid value
您是否在代码中将 "connectionStringSetting" 写为属性名称?如果是这样,请您尝试将其更改为 "ConnectionStringSetting"。你可以参考这个tutorial或者下面我post的截图:
已解决(在 https://social.msdn.microsoft.com/ 上得到答案)。
我应该在 FunctionApp/Configuration/Application 设置中添加 AzureSignalRConnectionString 而不是 FunctionApp/Configuration/Application settings/Connection 字符串。
我正在使用 Azure 函数和 signalR 创建实时聊天。它在本地工作得很好,但是部署的 "negotiate" 功能不起作用。
协商函数(index.js)
module.exports = function (context, req, connectionInfo) {
context.res = { body: connectionInfo };
context.done();
}
配置文件(function.json)
{
"disabled": false,
"bindings": [
{
"authLevel": "anonymous",
"type": "httpTrigger",
"direction": "in",
"name": "req"
},
{
"type": "http",
"direction": "out",
"name": "res"
},
{
"type": "signalRConnectionInfo",
"name": "connectionInfo",
"hubName": "chat",
"direction": "in",
"connectionStringSetting": "AzureSignalRConnectionString"
}
]
}
AzureSignalRConnectionString 在函数应用程序属性中设置。 我还尝试使用 "connectionString" 而不是 "connectionStringSetting" 并使用连接字符串而不是 "AzureSignalRConnectionString" 引用,以及我们这里的所有 4 种可能组合。
如果我 运行 Azure 门户中的函数,我会收到此错误:
[Error] Executed 'Functions.negotiate' (Failed, Id=0ac24b1f-1ab0-40f5-9680-34db547e1cc9)
Unable to resolve the value for property 'SignalRConnectionInfoAttribute.ConnectionStringSetting'. Make sure the setting exists and has a valid value
您是否在代码中将 "connectionStringSetting" 写为属性名称?如果是这样,请您尝试将其更改为 "ConnectionStringSetting"。你可以参考这个tutorial或者下面我post的截图:
已解决(在 https://social.msdn.microsoft.com/ 上得到答案)。 我应该在 FunctionApp/Configuration/Application 设置中添加 AzureSignalRConnectionString 而不是 FunctionApp/Configuration/Application settings/Connection 字符串。