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

138
Visualizações
Redirección exprés

Estoy tratando de redirigir al usuario después de que se haya validado el registro. Vea el código a continuación, nunca funcionó con todo lo que probé. También probé en la parte delantera con

 <Redirect=to"/login" />

tampoco fue un éxito. Estoy tratando de redirigir a: http://localhost:3000/login, el backend está actualmente en el puerto 5000. También veo esos errores en la consola:

 Access to XMLHttpRequest at 'http://localhost:3000/login' (redirected from 'http://localhost:5000/users/signup') from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. GET http://localhost:3000/login net::ERR_FAILED createError.js:16 Uncaught (in promise) Error: Network Error at createError (createError.js:16) at XMLHttpRequest.handleError (xhr.js:99)

Mi primer pensamiento fue que el encabezado no está configurado, pero está en mi app.js

 app.use((req, res, next) => { res.setHeader("Access-Control-Allow-Origin", "*"); res.setHeader( "Access-Control-Allow-Headers", "Origin, X-Requested-With, Content, Accept, Content-Type, Authorization" ); res.setHeader( "Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, PATCH, OPTIONS" ); next(); });

Gracias por adelantado

 exports.signup = (req, res) => { bcrypt.hash(req.body.password, 10).then((hash) => { const user = { lastName: req.body.lastName, firstName: req.body.firstName, email: req.body.email, password: hash, }; User.create(user) .then(() => { res.redirect(301, 'http://localhost:3000/login'); }) .catch((error) => res.status(500).json({ message: "Impossible de créer l'utilisateur. " + error })); }); };
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

res.status(200).redirect('login');

(EDITAR) Esto devolverá 200 y redirigirá al usuario desde el backend.

Esta es mi solución desde el principio, si lo desea.

En la interfaz, puede redirigir a la ubicación deseada usando window.location.replace('/login') después de que el expreso devuelva un valor.

Lo que quiero decir con esto es que después de validar al usuario en su Express API, devuelva 200 a través res.status(200).send() para que su interfaz sepa que este usuario puede ser redirigido.

Un ejemplo con jQuery:

Interfaz

 <script> $.get('http://localhost:3000/login', function(data, status, jqXHR) { if (status === 200) { window.location.replace('redirect-location.html') } else { // What to do if the status isn't 200 } }) </script>

Back-End:

 app.get('/login', (res, req, err) => { // Validate const result = validatefunction() // true if login matches, false otherwise if (result) { res.status(200).send() } else if (!result) { res.status(400).send() } else { res.status(500).send() } })

Espero haber ayudado.

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