Redirection à partir d'un itinéraire à l'autre dans l'Express
J'ai itinéraires suivants dans nodejs
ici est users.js
route
router.post('/users/login', function(request, response) {
//let user login here and do all of the logic.
//Once done then redirect user to dashboard in dashboard.js file
response.redirect('/dashboard');
});
est ici dashboard.js itinéraire
router.get('/dashboard', function(request, response) {
response.render('plans');
});
Maintenant, quand je me connecte en tant qu'utilisateur lorsqu'il tente de rediriger moi, il dit suivantes.
cannot get Cannot GET /users/dashboard
Je veux des utilisateurs pour rediriger vers /dashboard/dashboard
à la place.
Comment puis-je rediriger les utilisateurs d'un itinéraire à l'autre dans l'Express?
- Vous devrez peut-être plus explicite avec votre itinéraire redirect -- il semble rester à l'intérieur du répertoire (peut-être pas le droit de travailler, puisque c'est une route)
/users
. Essayezresponse.redirect('/dashboard/dashboard');
si cela ne fonctionne pas, peut-être par rapport..
vous aider? - Son redirection devrait travailler tho, par conséquent aussi le docs '/ " chemin doit être relatif à la racine et sans slash, il doit être relatif au répertoire courant. @2619 pourriez-vous vérifier votre réponse rediriger les en-têtes dans le navigateur?
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même doute que vous avez eu, je suis venu ici pour chercher la réponse, mais n'en trouve pas donc j'ai dû faire quelques recherches dans les docs moi-même pour la solution, et j'en ai trouvé un.
Alors venir à la réponse maintenant. À l'aide de res.redirect('/tableau de bord") est de prendre le chemin qui est par rapport à l'itinéraire actuel je.e utilisateurs/le tableau de bord, si vous avez un itinéraire pour tableau de bord, alors vous aurez à utiliser de cette façon:
res.redirect('../tableau de bord/dashboard")
Juste pour la référence ici est un aperçu de mon projet:
itinéraires dossier
ici est
user_home.js
route :et voici le code de la route à partir de là où je suis rediriger :
P. S: C'est ma première réponse sur un débordement de pile content que j'ai pu aider quelqu'un à sortir.
Je l'avais dans un de mes parcours nommé "contributions" et quand il est redirigé, il est traduit comme "contributions/auth/login' qui est faux.
La principale chose dont j'avais besoin était 'localhost://port/auth/login.
j'ai changé mon ejs balise d'ancrage à '/auth/login " qui prendra l'url à partir de la racine, Il ne l'était auparavant 'auth/login' qui a pris l'url actuelle url url, c'est à dire, contributions/auth/login' dans mon cas.
Espère que cette aide.