Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

229
Views
¿Por qué Solicitar API cuando el error siempre va a atrapar?

Tengo algunas preguntas sobre cómo solicitar la API del servidor. Hago una función para la API de solicitud, el ejemplo, tengo un inicio de sesión de la API de solicitud cuando el usuario completa el correo electrónico incorrectamente, la API de respuesta es "¡el correo electrónico o la contraseña son incorrectos!", Cuando intento en cartero, la respuesta es exitosa, pero cuando intento en mi código la respuesta siempre de la captura, no de la API de respuesta. Mi código para solicitar API como a continuación

 const handleSubmitLogin = async (input) => { try { const result = await axios.post(`${BASE_URL}/users/client/login`, input); if (result.status == 200 || result.status === "success" || result.status == 201) { await setAuthKey(result.data.data.token); await setLoggedUser(JSON.stringify(result.data.data)); dispatch(setUserLogin()); dispatch(setDataLogin(result.data.data)); } else { setModalActive({ status: true, data: result.message }); } } catch (error) { console.log(error); setModalActive({ status: true, data: translations["please.try.again"] }); } };

cuando un usuario ingresa incorrectamente un correo electrónico o una contraseña, la respuesta siempre es de la respuesta de captura, no de la respuesta de la API. ¿Alguien puede dar sugerencias para este caso?

Editar: este es el resultado de cuando el usuario tiene una contraseña incorrecta ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Gelvez
1 answers
Answer question

0

Si su API responde con un código de estado no exitoso (>= 400), Axios rechazará la promesa y su código irá al bloque catch .

Todavía puede acceder a los datos de respuesta a través de error.response.data . Ver Axios - Manejo de errores

 try { const result = await axios.post(`${BASE_URL}/users/client/login`, input); // etc... } catch (err) { console.warn("login", error.toJSON()); setModalActive({ status: true, data: error.response?.data?.message ?? translations["please.try.again"], }); }

Es importante usar el encadenamiento opcional , ya que es posible que el error no tenga una respuesta o datos dependiendo de qué falló exactamente.

about 4 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!