public async void Login([FromForm] string username, [FromForm] string passwd) { var u = UserStore.Get(username).Result; if (u != null && u.CheckPasswd(passwd)) { var token = await JwtBuilder.CreateJWTAsync(u, "KitchenAuth", "KicthenAuth", 1); HttpContext.Response.Headers.Add("auth", token); HttpContext.Response.StatusCode = (int)HttpStatusCode.Accepted; } else { HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized; HttpContext.Response.Headers.Remove("auth"); } }
public async Task <User> Creds([FromForm] string email = null, [FromForm] string passwd = null, [FromHeader] string token = null) { string user; if (token != null && (user = JwtBuilder.UserJwtToken(token).Result) != null) { var u = UserStore.Get(user).Result; if (u == null) { HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized; HttpContext.Response.Headers.Remove("auth"); return(null); } if (email != null) { if (UserStore.Exists(email).Result) { HttpContext.Response.StatusCode = (int)HttpStatusCode.Conflict; return(null); } u._email = email; token = await JwtBuilder.CreateJWTAsync(u, "KitchenAuth", "KicthenAuth", 1); } if (passwd != null) { u._passwd = passwd; } await UserStore.Add(u); HttpContext.Response.Headers.Add("auth", token); HttpContext.Response.StatusCode = (int)HttpStatusCode.OK; return(u); } HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized; HttpContext.Response.Headers.Remove("auth"); return(null); }