SignalR 2在Azure

时间:2016-04-07 11:44:39

标签: asp.net azure signalr

我在Azure上部署了一个ASP.NET 5 MVC 6应用程序,并使用SignalR 2遇到了这个问题: 从客户端开始连接时,请致电

/signalr/negotiate?clientProtocol=1.5&connectionData=%5B%7B"name"%3A"gameHub"%7D%5D&_=1460028930688

失败,错误500.

错误500背后的例外是:

  

异常详细信息:   System.Security.Cryptography.CryptographicException:数据   保护操作不成功。这可能是由于   没有为当前线程的用户加载用户配置文件   上下文,当线程模仿时可能就是这种情况。

来源错误:

  

执行期间生成了未处理的异常   当前的网络请求。有关的来源和位置的信息   可以使用下面的异常堆栈跟踪来识别异常。

堆栈追踪:

  

[CryptographicException:数据保护操作是   不成功。这可能是由于没有用户造成的   为当前线程的用户上下文加载的配置文件,可能是   线程假冒的情况。]

我在SignalR CryptographicException on AzureWebsites阅读并尝试了解决方案,但是ID对我不起作用。

据我了解,Azure不允许使用LoadUserProfile。

任何解决方法?

1 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,我的修复是在致电UseAesDataProtectorProvider()之前添加对MapSignalR()的来电。希望这有助于某人。