【发布时间】:2022-01-11 19:33:21
【问题描述】:
当我尝试运行节点服务器时,我得到错误:Route.get() 需要一个回调函数但得到一个 [object Undefined]
在路线。 [得到]
这是完整的错误信息:
节点服务器.js E:\OneDrive\Documents\rest\node_modules\express\lib\router\route.js:202 抛出新的错误(味精); ^ 错误:Route.get() 需要回调函数,但得到了 [object Undefined]
在路线。 [as get] (E:\OneDrive\Documents\rest\node_modules\express\lib\router\route.js:202:15) 在 module.exports (E:\OneDrive\Documents\rest\routes.js:13:10) 在对象。 (E:\OneDrive\Documents\rest\server.js:11:1) 在 Module._compile (internal/modules/cjs/loader.js:1063:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
在 Module.load (internal/modules/cjs/loader.js:928:32) 在 Function.Module._load (internal/modules/cjs/loader.js:769:14) 在 Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) 在内部/main/run_main_module.js:17:47 块引用
controller.js
'use strict';
var response = require('./res');
var connection = require('./connection');
exports.index = function (req, res) {
response.ok("REST API!", res)
};
//display all restapi data
exports.displayrestapi = function (req, res) {
connection.query('SELECT * FROM restapi', function (error, rows, fileds) {
if (error) {
console.log(error);
} else {
response.ok(rows, res)
}
});
//display all restapi data by id
exports.displaybyid = function (req, res) {
let id = req.params.id;
connection.query('SELECT * FROM restapi WHERE id = ?', [id],
function (error, rows, fields) {
if (error) {
console.log(error);
} else {
response.ok(rows, res);
}
});
};
};
routes.js
'use strict';
module.exports = function (app) {
var jsonku = require('./controller');
app.route('/')
.get(jsonku.index);
app.route('/display')
.get(jsonku.displayrestapi);
app.route('/tampil/:id')
.get(jsonku.displaybyid);
}
server.js
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
//parser application/json
app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json());
//panggil routes
var routes = require('./routes');
routes(app);
app.listen(3000, () => {
console.log(`Server started on port`);
});
TIA^^
【问题讨论】:
-
您的
exports.displaybyid嵌套在exports.displayrestapi中 -
在 controller.js 中不应该使用
module.exports吗?
标签: javascript node.js