小编Ale*_*ski的帖子

ASP核心:如何设置httpContext.User?

我编写用于使用令牌进行身份验证的中间件。(不要问我:“为什么?”)

...
private UserManager<ApplicationUser> userManager;
private RequestDelegate next;
private WareHouseDbContext context; 
...
public async Task Invoke(HttpContext httpContext)
{
    var header = httpContext.Request.Headers.Where(x => x.Key == "Authorization");
    if (header.Count() == 1)
    {
        var token = header.First().Value.First();
        if (token.Contains("Bearer"))
        {
            var name = TokenEncryptor.Decrypt(token.Replace("Bearer ", ""));
            var user = context.Users.FirstOrDefault(x => x.UserName == name);

            if (user != null)
            {
                httpContext.User = user; // ???? how do this  ???/
            }
        }
    }           
    await next.Invoke(httpContext);
}
Run Code Online (Sandbox Code Playgroud)

请回答我如何设置httpContext.User?

asp.net identity httpcontext

7
推荐指数
1
解决办法
3062
查看次数

标签 统计

asp.net ×1

httpcontext ×1

identity ×1