NodeJS и console.log не регистрируются - PullRequest
0 голосов
/ 12 октября 2018

Итак, это была горячая минута с тех пор, как я использовал узел, и я не могу всю жизнь понять, почему это не работает.

const body_parser = require("body-parser");
var express = require("express");
var app = express();

app.use("/", express.static(__dirname +  "/Contents/"));

app.get("/", function(req, res) {
    //Why wont this log to my terminal when a user visits the site?
    console.log("log it pleaseeeeeeeeee");
});

app.listen(5004, () => {
   console.log("server up and listening on port 5004");
});

Я пытаюсь войтиРегистрируйте его, пожалуйста, каждый раз, когда пользователь посещает сайт, в терминал, где запущено мое приложение nodejs.Почему не работает эта работа?

1 Ответ

0 голосов
/ 12 октября 2018

У вас не может быть 2 отдельных обработчиков для конечной точки, в вашем случае "/"

Для достижения того, что вы хотите, вы должны предоставить функцию middleware .

express будет знать в зависимости от типа второго аргумента, что делать. middleware функции ожидают 3 аргумента;последний является обратным вызовом, поэтому он знает, когда вы готовы.

Вы должны изменить свой код, переместив функцию get в функцию app.use('/', ...) и включив параметр обратного вызова следующим образом:

const body_parser = require("body-parser");
var express = require("express");
var app = express();

app.use("/", function(req, res, callback) {
   console.log("log it pleaseeeeeeeeee");
   callback()
}, express.static(__dirname +  "/Contents/"));

/** GET RID OF THIS
app.get("/", function(req, res) {
   //Why wont this log to my terminal when a user visits the site?
   console.log("log it pleaseeeeeeeeee");
});
*/

app.listen(5004, () => {
   console.log("server up and listening on port 5004");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...