Я пытаюсь изучить промежуточное программное обеспечение в express js. Может ли кто-нибудь помочь там, где меня не хватает? Вот мой код

var express = require('express');
var bodyParser = require('body-parser');
var path = require('path');

var app = express();

app.use("/", function(req, res, next){
  console.log("this is my second output");
  next();
});

app.get('/', function(req,res){
  console.log("this is my first output");
//res.send('Hello World');
});

app.listen(3000, function(){
  console.log('Server started on port 3000...');
})

Я получаю Server started on port 3000.., когда запускаю cmd и получаю "страница не работает" на localhost:3000

Edited

Я получил

Server started on port 3000...
this is my second output
this is my first output
this is my second output
this is my first output
this is my second output
this is my first output
this is my second output
this is my first output
this is my second output
this is my first output
this is my second output
this is my first output
this is my second output
this is my first output

Через некоторое время. Но localhost: 3000 все еще не работает

2
Bhakti Thakkar 18 Сен 2018 в 07:03

2 ответа

Лучший ответ

enter image description here

   var express = require('express');
    var bodyParser = require('body-parser');
    var path = require('path');

    var app = express();
    // use this middleware to pass all the requests
    app.use("/", function(req, res, next){
      console.log("this is my second output");
    // move to next middleware
      next();
    });
    //handle all the get requests to localhost:3000 url
    app.get('/', function(req,res){
      console.log("this is my first output");
    // send the response
    res.send('Hello World');
    // or you can send the response like this 
    // res.json(JSON.stringify({"success":"true"}));
    });

    app.listen(3000, function(){
      console.log('Server started on port 3000...');
    })

Отправить запрос на получение на http://localhost:3000

1
NuOne 18 Сен 2018 в 04:16

Причина, по которой вы получаете сообщение «страница не работает», заключается в том, что ваше приложение не отвечает ни на один полученный запрос.

Вам нужно раскомментировать это res.send('Hello World'); в app.get('/', ...). После этого ваш код работает отлично.

Однако обратите внимание, что в структуре вашего кода ваше промежуточное ПО app.use(...) вызывается до , которое вы перейдете к основной логике маршрута (app.get(...)), в отличие от того, что указано по вашим console.log звонкам.

3
Henry Woody 18 Сен 2018 в 04:42