dans ma node.js app, j'ai un Ici, lorsque la demande est tout ce que je veux est-ce juste ignorer Comment puis-je résoudre ce problème? Merci d'avance. P> p> routeur.get ("/ *) code> itinéraire pour la poignée Tout get demande, attendre le tableau de bord. Qui sera géré par
routeur.get ( "/ tableau de bord") code>. Maintenant problème est
routeur.get ("/ *") code> toujours appelé même si demande itinéraire est
routeur.get ("/ tableau de bord") Code>. Mon code est donné ci-dessous:
routeur.get ("/ tableau de bord") code>, les deux
routeur.get (" / *) code> et
routeur.get ("/ tableau de bord") code> sont appelés. Et premier
routeur.get ("/ tableau de bord") code> est appelé puis
routeur.get ("/ *) code> est appelé. P>
routeur.get ("/ *) code> lorsque la demande vient pour
routeur.get (" / tableau de bord ") code>. p>
3 Réponses :
Dans votre capture, tout itinéraire aurait besoin de supprimer le / code>. Il devrait ressembler à ce
Vous pouvez utiliser app.get ('*', code> et aussi vous auriez besoin de la mettre après tous les autres points d'extrémité, quelque chose comme ceci:
app.get('/dashboard', (req, res) => {
...
});
app.get('/foo', (req, res) => {
...
});
app.get('*', (req, res) => {
...
});
Votre Pour résoudre ceci, vous pouvez définir un Favicon pour votre site. ou désactiver-le. p> app.get ("*") code> invoquera toujours. Même si vous essayez d'invoquer
app.get ("*") code>, vous remarquerez que la méthode invoque deux fois.
C'est parce que, le navigateur tente d'obtenir un Fevicon pour votre site.
Si vous console.log the
req.originalurl code>, vous remarquerez que "/favicon.ico" est l'appel supplémentaire.
Je regarderai.
C'est un comportement étrange. À une demande, seul l'un des rappels sera déclenché. Comment savez-vous que les deux sont appelées?
@RDRAHUL, j'ai ajouté une console.log sur les deux itinéraires