出口和要求快递申请问题
Exporting and requiring Express application issue
以下面的基本 Express: 'Hello World' 示例作为我的起点:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('App listening at http://%s:%s', host, port);
});
我正在尝试将代码组织在不同的 .js
文件中以分离配置和路由。
这样我会 app.js
:
var express = require('express');
var app = express();
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('App listening at http://%s:%s', host, port);
});
// Expose app
exports = module.exports = app;
和/routes/api.js
(在名为routes
的子目录中有api.js
):
var app = require('../app.js');
app.get('/', function (req, res) {
res.send('Hello World!');
});
但是 exports = module.exports = app;
和 var app = require('../app.js');
不工作:我在调用 API 方法时一直收到消息 Cannot GET /
。
你应该制作 app.js
你的 'main' 文件,路由应该包含在里面。
您的路由文件应该如下所示:
var express = require('express');
var router = express.Router();
router.get('/', function (req, res) {
res.send('Hello World!');
});
module.exports = router;
并在您的 app.js
中添加:
var api = require("./routes/api.js");
...
//all your code for creating app
...
app.use('/', api);
以下面的基本 Express: 'Hello World' 示例作为我的起点:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('App listening at http://%s:%s', host, port);
});
我正在尝试将代码组织在不同的 .js
文件中以分离配置和路由。
这样我会 app.js
:
var express = require('express');
var app = express();
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('App listening at http://%s:%s', host, port);
});
// Expose app
exports = module.exports = app;
和/routes/api.js
(在名为routes
的子目录中有api.js
):
var app = require('../app.js');
app.get('/', function (req, res) {
res.send('Hello World!');
});
但是 exports = module.exports = app;
和 var app = require('../app.js');
不工作:我在调用 API 方法时一直收到消息 Cannot GET /
。
你应该制作 app.js
你的 'main' 文件,路由应该包含在里面。
您的路由文件应该如下所示:
var express = require('express');
var router = express.Router();
router.get('/', function (req, res) {
res.send('Hello World!');
});
module.exports = router;
并在您的 app.js
中添加:
var api = require("./routes/api.js");
...
//all your code for creating app
...
app.use('/', api);