在node.js中,控制台显示成功日志,但是localhost:3000未连接

时间:2018-09-08 20:08:23

标签: javascript node.js

我正在使用node.js,express和mysql创建一个简单的Web应用程序。

当我连接以获得/ employees时,我尝试console.log链接的DB的数据。但是,当连接到本地主机时,会发生无限延迟。

我怎么了?

index.js

const mysql = require('mysql');
const express = require('express');
var app = express();
const bodyparser = require('body-parser');

app.use(bodyparser.json)

var mysqlConnection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'ps',
    database: 'EmployeeDB'
});

mysqlConnection.connect((err) => {
    if(!err)
    console.log('DB connection succeded');
    else
    console.log('DB connection failed \n Error : '+ JSON.stringify(err, undefined, 2));
});

app.listen(3000, () => console.log('Express server is running at port no:3000'));

app.get('/employees',(res, req)=> {
    mysqlConnection.query('SELECT * FROM Employee',(err, rows, fields)=>{
        if(!err)
        console.log(rows);
        // console.log(rows[0].EmpID);
        else
        console.log(err);
    })
});

1 个答案:

答案 0 :(得分:1)

您需要返回一些信息,例如数据:

app.get('/employees',(req, res)=> {
    mysqlConnection.query('SELECT * FROM Employee',(err, rows, fields)=>{
        if(!err)
            res.json(rows);
        else
            res.status(500).send('Error found');
    })
});

此外,@ JonathanLonowski捕获到的参数也与正常情况相反-(res, req)(req, res)