public async Task <IHttpActionResult> SignIn([FromBody] ClientSignInRequest request) { if (!this.ModelState.IsValid) { return(this.BadRequest(this.ModelState)); } Client client; try { client = (Client)request.ToEntity(this.Context); } catch (NotImplementedException) { client = (Client)await request.ToEntityAsync(this.Context); } if (client == null || client.IsBlocked) { return(this.Unauthorized()); } return(this.Ok(client)); }
public ActionResult <ClientSignInResponse> PostSignIn(ClientSignInRequest request) { var client = _context.Client .Where(a => a.Email == request.Email) .Single(); if (client == null) { return(NotFound()); } if (!Hash.Validate(request.Password, client.Password)) { return(NotFound()); } return(Ok(new ClientSignInResponse() { Id = client.Id, Email = client.Email, Name = client.Name, Token = JwtSecurityTokenHelper.BuildToken(configuration["Jwt:Key"], client), })); }