Node.js : Comment faire quelque chose sur toutes les requêtes HTTP en Express?
Donc je voudrais faire quelque chose comme:
app.On_All_Incomeing_Request(function(req, res){
console.log('request received from a client.');
});
l'actuel app.all()
a besoin d'un chemin, et si je donne l'exemple de ce /
alors il ne fonctionne que quand je suis sur la page d'accueil, il n'est donc pas vraiment tout..
En plaine node.js c'est aussi simple que d'écrire quoi que ce soit après nous à créer le serveur http, et avant de nous faire la page de routage.
Donc comment faire cela avec express, et quelle est la meilleure façon de le faire?
Vous devez vous connecter pour publier un commentaire.
Express est basé sur le Connecter middleware.
Les fonctions de routage Express sont fournis par le
router
de votre application et vous êtes libre d'ajouter vos propres middlewares pour votre application.C'est aussi simple que cela.
(PS : Si vous voulez juste quelques traces que vous pourriez envisager d'utiliser la enregistreur fournis par Connect)
app.all("*", cb)
fonctionnera tout aussi bienapp.router
au lieu du serveur. Je doute que c'est beaucoup moins efficaceapp.all("*", cb)
solution, y compris la discussion de pourquoi/pourquoi ne pas l'utiliser (je suppose que la plupart stylistiques). Il est pertinent de connaître les options.(PS : If you just want some logging you might consider using the logger provided by Connect)
connect.logger
est maintenant morgan Utiliser quelque chose comme " app.utilisation(require('morgan') ("combiné"));app.configure
n'est pas une fonction?Ce faire, vous devez: