Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

143
Vistas
Me estoy conectando a una API y necesito verificar si el usuario y la contraseña existen en la API

Entonces, estoy tratando de validar si el usuario y la contraseña insertados están en la base de datos de la API; por ahora, mi código solo solicita un nombre de usuario y una contraseña y le da un token proporcionado por la API, incluso si el usuario no existe. Mi problema es cómo llamar a la API para validar si el usuario existe o no. Estoy tratando de crear un ciclo if para comunicarme con la API, pero no tengo ninguna idea. Este es mi código:

 import React, { useState } from "react"; import { useNavigate } from "react-router-dom"; import"./App.css"; const Login = () => { const [username, setUsername] = useState(""); const [Password, setPassword] = useState(""); const [error] = useState(null); const [loading] = useState(false); const navigate = useNavigate(); const handleLogin = () => { console.log("name------->", username); console.log("pass------->", Password); var axios = require("axios"); var data = JSON.stringify({ "password": Password, "username": username, }); var config = { method: "post", url: "https://api.secureme.pt/api/v1/auth/login", headers: { "Content-Type": "application/json", }, data: data, }; axios(config) .then(function (response) { console.log("token----->", response.data.token); sessionStorage.setItem("token", response.data.token); navigate("/home"); }) .catch(function (error) { console.log(error); }); }; return ( <div className="Login"> <div className="title"> Login </div> <br /> <br /> <div> Username: <br /> <input type="text" value={username} onChange={(e) => setUsername(e.target.value)} /> </div> <div> Password: <br /> <input type="password" value={Password} onChange={(e) => setPassword(e.target.value)} /> </div> <br /> {error && <div className="error">{error}</div>} <input className="button" type="button" value={loading ? "Loading..." : "Login"} disabled={loading} onClick={handleLogin} /> </div> ); }; export default Login;
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Agregaría al 100% esa lógica en el extremo del servidor.
Entonces, su punto final de inicio de sesión: https://api.secureme.pt/api/v1/auth/login , contendría una lógica como;

  1. Obtener nombre de usuario y contraseña.
  2. Compruebe si el nombre de usuario y la contraseña existen en la base de datos.
  3. Si es así, devuelva el token de acceso.
  4. De lo contrario, maneje en consecuencia devolviendo un código de error de autenticación fallido.

Dicho esto, si eres persistente para hacerlo desde el principio. Sin saber qué base de datos está utilizando, es difícil compartir ejemplos.

Pero en su función handleLogin() , antes de llamar al punto final de inicio de login con Axios , justo antes de eso, verifique si el nombre de usuario y la contraseña existen en la base de datos.

Para hacer esto, obviamente dependiendo de la base de datos, tendría que instalar/importar los paquetes relevantes para realizar esa solicitud.

Otra solución sería tener un punto final separado en el extremo del servidor que verificaría si existen las credenciales y devolvería un valor booleano.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda