我正在尝试通过节点中的路由器接收信息,抱歉我对node.js很新,但目前这都在app.js文件中:(我只是得到一个“不能GET / api /去localhost:1337 / api
var express = require('express');
var path = require('path');
var mysql = require('mysql2');
var app = express();
var router = express.Router();
this.connection = null;
function startCon() {
console.log("www");
return mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'root',
database: 'users'
})
}
function getAll(){
console.log("bbb");
this.connection = startCon();
connection.query('SELECT * FROM user;', function (error, data) {
if(!error){
console.log(data);
}
else {
console.log("Error Selecting : %s ", error );
}
});
}
router.get('/api', function(req, res) {
console.log("lol");
userDal.getAll(function(err, data){
if(!err){
res.json(data);
}
else {
console.log(err);
}
});
});
getAll();
app.listen(1337, function(){
console.log('Server listening on port 1337');
});
答案 0 :(得分:1)
您拥有收听请求的app.use('/', router);
和处理呼叫的{{1}},但您并没有将它们捆绑在一起。
你在代码的末尾错过了这个:
{{1}}
答案 1 :(得分:0)
查看the express demo,您不需要express.Router()
来电。
将router.get
更改为app.get
app.get('/api', function(req, res) {
console.log("lol");
userDal.getAll(function(err, data){
if(!err){
res.json(data);
}
else {
console.log(err);
}
});
});