【问题标题】:Nodejs CANNOT GETNodejs 无法获取
【发布时间】:2018-07-24 09:45:04
【问题描述】:

我一直在尝试在 Express 中创建路线。例如一条 /about 路线,但它不起作用。

    var express = require('express');
    var app = express();
    var router  = express.Router();

    var moment = require('moment'); 

    var bodyParser = require('body-parser');
    var multer = require('multer'); // v1.0.5
    var upload = multer(); // for parsing multipart/form-data


    app.use(bodyParser.json()); // for parsing application/json
    app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
    app.get('/', function (req, res) {
    //some action
    });


    app.get('/time', function (req, res) {
     //...

    });


    app.get('/about', function (req, res) {
        res.send('about');
      });

目前在调用 url/about 后,我​​得到了 Cannot GET /about 作为回报,经过一番研究,我不知道如何解决这个问题。他们甚至在官方快递文档中也是这样描述的。

提前谢谢你。

【问题讨论】:

  • 您是否尝试过访问/ 路由?你有app.listen 一个端口吗?
  • / 工作正常。我在代码末尾还有一个app.listen(3000, function () { console.log('Example app listening on port 3000!'); });
  • 刚刚测试了你的代码,$ curl http://localhost:3000/about -> about 工作了
  • 但是在服务器上它不工作。

标签: node.js get


【解决方案1】:

你的代码中有这样的东西吗? :

app.listen(SERVER_PORT, function () {
console.log("Server successfully started on port:" + SERVER_PORT); });

【讨论】:

  • 是的。最后是app.listen(3000, function () { console.log('Example app listening on port 3000!'); });
【解决方案2】:

我们应该有这样的东西:

var express = require('express');
var routes = require('./routes');
var http = require('http');
var path = require('path');
const app = express();

// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);
app.use(require('stylus').middleware(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'public')));

// development only
if ('development' == app.get('env')) {
    app.use(express.errorHandler());
}

app.get('/', routes.index);
app.get('/about', routes.about);
  • 以及在意见文件夹中:about.jade

【讨论】:

  • 我不太确定这一切意味着什么。我什至没有渲染任何东西。它只需要返回一个 JSON 文档。
猜你喜欢
  • 2018-06-17
  • 2018-07-01
  • 1970-01-01
  • 2014-02-14
  • 2020-05-25
  • 1970-01-01
  • 1970-01-01
  • 2021-10-13
  • 2012-10-31
相关资源
最近更新 更多