具有身份框架的 SignalR
SignalR with Identity framework
老实说,我进行了很多搜索,但找不到有关使用身份框架的 SignalR 的简单教程。
我已经制作了我的身份用户模型以及与之相关的所有其他内容。
public class User : IdentityUser
{
// Foreign keys and relations
public virtual Country Country { get; set; }
public virtual List<UserLanguageLevel> Languages { get; set; }
public virtual List<UserMeta> Meta { get; set; }
public virtual List<ChatRoom> ChatRooms { get; set; }
public User()
{
this.Meta = new List<UserMeta>();
this.Languages = new List<UserLanguageLevel>();
this.ChatRooms = new List<ChatRoom>();
}
}
我只想访问 SignalR Hub 的 OnConnected() 方法中的声明,但我不知道如何访问。
请提供相关的好资料和话题。谢谢。
如何访问 Context 的属性?
System.Web.HttpContextBase httpContext = Context.Request.GetHttpContext();
System.Security.Principal.IPrincipal user = Context.User;
这将允许您访问用户和声明。我从 official docs 获得了这段代码。
也就是说,我不太确定直接访问这些属性以访问当前用户是否是个好主意。您可以使用 ConnectionId 并将其映射到用户,如 here.
所述
老实说,我进行了很多搜索,但找不到有关使用身份框架的 SignalR 的简单教程。
我已经制作了我的身份用户模型以及与之相关的所有其他内容。
public class User : IdentityUser
{
// Foreign keys and relations
public virtual Country Country { get; set; }
public virtual List<UserLanguageLevel> Languages { get; set; }
public virtual List<UserMeta> Meta { get; set; }
public virtual List<ChatRoom> ChatRooms { get; set; }
public User()
{
this.Meta = new List<UserMeta>();
this.Languages = new List<UserLanguageLevel>();
this.ChatRooms = new List<ChatRoom>();
}
}
我只想访问 SignalR Hub 的 OnConnected() 方法中的声明,但我不知道如何访问。
请提供相关的好资料和话题。谢谢。
如何访问 Context 的属性?
System.Web.HttpContextBase httpContext = Context.Request.GetHttpContext();
System.Security.Principal.IPrincipal user = Context.User;
这将允许您访问用户和声明。我从 official docs 获得了这段代码。
也就是说,我不太确定直接访问这些属性以访问当前用户是否是个好主意。您可以使用 ConnectionId 并将其映射到用户,如 here.
所述