public HttpResponseMessage PostCreateUser([FromBody] User create)
        {
            HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);

            if (create == null)
            {
                return(response = new HttpResponseMessage(HttpStatusCode.NotImplemented));//Modelo incompleto 501
            }
            EngineProyect Funcion   = new EngineProyect();
            bool          resultado = false;

            resultado = Funcion.CompareString(create.SignatureApp, EngineData.SignatureApp);
            if (!resultado)
            {
                return(response = new HttpResponseMessage(HttpStatusCode.ExpectationFailed));//No es la firma 417
            }
            EngineDb Metodo = new EngineDb();

            resultado = Metodo.InsertUser(create);
            if (!resultado)
            {
                response         = new HttpResponseMessage(HttpStatusCode.NotAcceptable); //No pudo crearse usuario 406
                response.Content = new StringContent(Metodo.Failure());                   //Informacion especifica del error
                return(response);
            }

            response.Headers.Location = new Uri(EngineData.UrlBase + EngineData.EndPointLogin);
            return(response);
        }
예제 #2
0
        private bool AuthenticateUser(User login)
        {
            bool          resultado = false;
            EngineDb      Metodo    = new EngineDb();
            EngineProyect Funcion   = new EngineProyect();
            User          user      = new User();

            user = Metodo.GetUser(login);
            string entry       = Funcion.ConvertirBase64(login.Username + login.Password);
            bool   comparacion = Funcion.CompareString(user.Password, entry);

            if (!comparacion)
            {
                return(resultado);
            }

            user.Token = GenerateJSONWebToken(user);
            resultado  = true;
            return(resultado);
        }