最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

app.post不是函数表达节点

IT培训 admin 3浏览 0评论

app.post不是函数表达节点

我在server.js中拥有所有路由,但我想将其模块化并放入名为routes的文件夹中。我在routes文件夹中创建了一个名为apis.js的文件,但正如我所做的那样,我得到了TypeError: app.post is not a function

server.js:

var express    = require('express');
var app        = express();

var bodyParser = require('body-parser');
var urlencode = bodyParser.urlencoded({ extended: true});

app.use(express.static('public'));

var apis = require('./routes/apis');
app.use('/', apis);

module.exports = app;

apis.js:

  module.exports = function(app){

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

  app.post('/idea', function(req, res) {
  ...
  });

};

此外,在server.js中使用module.exports = app非常重要,因为我已经运行了测试,并且我每次都想要一个app实例。

我错过了什么?

回答如下:

更好的方法: -

server.js

var express    = require('express');
var app        = express();

var bodyParser = require('body-parser');
var urlencode = bodyParser.urlencoded({ extended: true});

app.use(express.static('public'));

var apis = require('./routes/apis');
app.use('/', apis);

module.exports = app;

apis.js: -

var router = require('express').Router();
router.post('/url',function(req,res,next){
 //your code 
})

module.exports = router

app.post不是函数表达节点

我在server.js中拥有所有路由,但我想将其模块化并放入名为routes的文件夹中。我在routes文件夹中创建了一个名为apis.js的文件,但正如我所做的那样,我得到了TypeError: app.post is not a function

server.js:

var express    = require('express');
var app        = express();

var bodyParser = require('body-parser');
var urlencode = bodyParser.urlencoded({ extended: true});

app.use(express.static('public'));

var apis = require('./routes/apis');
app.use('/', apis);

module.exports = app;

apis.js:

  module.exports = function(app){

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

  app.post('/idea', function(req, res) {
  ...
  });

};

此外,在server.js中使用module.exports = app非常重要,因为我已经运行了测试,并且我每次都想要一个app实例。

我错过了什么?

回答如下:

更好的方法: -

server.js

var express    = require('express');
var app        = express();

var bodyParser = require('body-parser');
var urlencode = bodyParser.urlencoded({ extended: true});

app.use(express.static('public'));

var apis = require('./routes/apis');
app.use('/', apis);

module.exports = app;

apis.js: -

var router = require('express').Router();
router.post('/url',function(req,res,next){
 //your code 
})

module.exports = router

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论