我正在尝试使用ASP.NET身份使SignalR工作。代码非常简单,我们创建一个新的MVC5 Web应用程序,启用Google帐户外部,使用Google帐户登录并通过调用以下方式向Hub请求识别用户:
Context.User.Identity
无论如何,这总是返回null,似乎客户端代理无法发送外部cookie。
唯一的解决方法是执行与此处所述相同的步骤:
该解决方法有效,但我更愿意使用其他解决方案。我还检查了https://github.com/gustavo-armenta/CookieAuthenticationSample,但这不是使用外部身份验证。
您对Hub如何识别ASP.NET身份的外部身份验证架构有任何其他想法吗?
由于
答案 0 :(得分:10)
确定。经过几个小时的搜索,我去了jabbr在线支持,davidfowl得到了帮助。问题是Startup类上的调用顺序。我有:
app.MapSignalR();
ConfigureAuth(app);
而不是:
ConfigureAuth(app);
app.MapSignalR();
感谢大卫。