Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

256
Visualizações
Javascript: obtenga un error BadRequest de una Web Api .Net 6 usando fetch

Tengo un pequeño problema para usar fetch,

Este es el código javascript:

 function loginJS() { const login = document.getElementById('login'); const nome = document.getElementById('lnome'); const pass = document.getElementById('lpass'); const item = { Username: nome.value.trim(), Password: pass.value.trim() }; fetch(uri, { credentials: 'include', method: 'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify(item) }) .then(response => response.json()) .then((res) => { //trying get the error (this if not work) , 400 is the code for bad request if (status = 400) { console.error(''); //HERE I HAVE THE PROBLEM } nome.value = ''; pass.value = ''; console.info('Login Success'); window.location.href = url_1; }) .catch(error => console.error('Unable to Login: ', error)); }

Entonces, el problema es obtener la solicitud incorrecta de un controlador API web,

Si el controlador da una solicitud mala, tiene que detener la búsqueda y no dar el 'Inicio de sesión exitoso', por ejemplo

¿Cómo se hace esto? y si hay mejores soluciones para obtener este error (por ejemplo, use AJAX en lugar de buscar).

Cualquier ayuda es bienvenida

PD: para advertir que este código Javascript y el código del controlador Web API funcionan normalmente si no hubo solicitudes incorrectas

EDITAR

Con la respuesta de usar algo como un retorno; tengo otro problema que es que no puedo obtener el código de 'estado'

 .then((res) => { if (status == 400) { window.alert('ERRROOORR'); return; } else if (status == 200) { nome.value = ''; email.value = ''; pass.value = ''; window.alert('Register Sucess'); document.getElementById('LoginCheck').click(); } else { window.alert('Not making sense'); } })

En el código de arriba da el 'No tiene sentido', ¿cómo obtengo el valor verdadero del estado pasando el estado verdadero a una variable?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Después de recibir el código de estado 400, ingresa la declaración if ya que es verdadero. Después de eso, es libre de irse ya que no lo devuelve. Ahora el código seguirá adelante después de la declaración if, ya sea verdadera o falsa.

Deberías implementar algo como esto:

 If (status == 400) { console.log("400 triggered"); return; }

Es posible que desee implementar una forma de decirles a sus usuarios que algo salió mal, ya que no tendrán sus consolas abiertas.

CON RESPECTO A LA EDICIÓN

En el siguiente código, asigna el valor devuelto a res

 .then((res) => {

res probablemente significa respuesta en este caso. Debería ver qué devuelve res al iniciar sesión en la consola:

 console.log(res)

Esto debería devolver un objeto que contiene muchas propiedades con respecto al response status . Mire a su alrededor si puede encontrar el statuscode de estado. Esta variable reemplazará a la variable de status .

Cambiará de esto:

 if (status == 400) {

A algo como esto:

 if (res.statusCode == 400) {
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda