小编Ȝla*_*leh的帖子

有没有办法让Api Controller中的当前用户

这就是我在图片中显示的索赔中得到的我正在使用asp.net授权以Angular js登录客户端,我需要让当前用户登录

我需要让当前用户在我的记录器表中保存任何操作,并且httpcontext.session.current为null,是否有另一种方法可以在会话中保存登录的用户或随时获取其他信息

public class ApplicationOAuthProvider : OAuthAuthorizationServerProvider
{
    private readonly string _publicClientId;

    static ERPV02_03Entities db;

    public ApplicationOAuthProvider(string publicClientId)
    {
        if (publicClientId == null)
        {
            throw new ArgumentNullException("publicClientId");
        }
        db = SingleTonConText.Instance;

       _publicClientId = publicClientId;
    }

    public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
    {
        var userManager = context.OwinContext.GetUserManager<ApplicationUserManager>();

        ApplicationUser user = await userManager.FindAsync(context.UserName, context.Password);

        if (user == null)
        {
            context.SetError("invalid_grant", "The user name or password is incorrect.");
            return;
        }

        ClaimsIdentity oAuthIdentity = await user.GenerateUserIdentityAsync(userManager,
        OAuthDefaults.AuthenticationType);
        ClaimsIdentity cookiesIdentity = await user.GenerateUserIdentityAsync(userManager,
        CookieAuthenticationDefaults.AuthenticationType); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-web-api asp.net-apicontroller

5
推荐指数
1
解决办法
1922
查看次数