SignalR net45 在特定 user/machine 组合上给出 401 Unauthorized

SignalR net45 gives 401 Unauthorized on specific user/machine combinations

我们最近将一个 WPF 应用程序及其所有 NuGet 依赖项更新为 .NET 4.5.2,发现一些用户从 SignalR 收到 HTTP 401 未经授权的错误。正在通过 PrincipalUserIdProvider 使用 Windows 身份验证。

连接到 SignalR 后,我在第一个 POST 到 SignalR 时收到 401 错误,但有很多原因导致这是一个奇怪的问题:

该问题仅出现在 user/machine 组合的一小部分,但对于这些设置,401 出现的概率为 100%。 Win7和Win8.1客户端均出现。服务器没有安装 websockets。

对可能出现的问题有什么建议吗?

我不知道为什么,但引用 SignalR 客户端 dll 的 net40 副本而不是 net45 副本可以解决问题。

我删除了对 Microsoft.AspNet.SignalR.Client.dll 的引用,并使用我的 NuGet 包文件夹中的 net40 dll 重新添加了引用:Microsoft.AspNet.SignalR.Client.2.2.0\lib\net40\Microsoft.AspNet.SignalR.Client.dll