AWS:测试连接到数据库的失败,但总是成功

时间:2019-03-12 03:01:48

标签: node.js database amazon-web-services

我刚刚与AWS NodeJS应用程序一起创建了一个SQL数据库。我正在测试连接。最初,我使用为var connection注释掉的代码。它成功返回了,所以我认为一切都很好。

接下来,我决定测试失败。如您所见,我为var connection的数据放置了一些随机值,但是它仍返回“ WE DID IT!”。我希望它在这里失败并返回“ ERROR WITH DB”,毕竟我的所有信息连接到数据库完全无效。

var express = require('express');
var router = express.Router();

router.get('/', function(req, res, next) {

    var mysql = require('mysql');

    /*
    var connection = mysql.createConnection({
      host     : process.env.RDS_HOSTNAME,
      user     : process.env.RDS_USERNAME,
      password : process.env.RDS_PASSWORD,
      port     : process.env.RDS_PORT
    });*/

    var connection = mysql.createConnection({
        host     : "test",
        user     : "test",
        password : "test",
        port     : 0000
      });

    connection.connect(function(err) {
    if (err) {
        console.error('Database connection failed: ' + err.stack);
        res.send('ERROR WITH DB.');
        return;
    }

    console.log('Connected to database name: ' + String(process.env.RDS_DB_NAME));
    });

    connection.end();

    res.send('WE DID IT!');
  });


  module.exports = router;

我不确定为什么会这样。另外,我对Web编程也不是很有经验。我正在努力寻找一种调试方法。据我所知,process.env变量是从AWS流程中提取的。我可以想到的在本地进行调试的唯一方法是对数据库连接变量的实际值进行硬编码,因为process.env不会在本地存在。但是,即使那样,我仍然不确定如何调试该程序以查看发生了什么。

关于使用NodeJS在本地进行调试的任何提示,或者为什么我的数据库连接功能似乎总是返回正数的任何提示都将非常有帮助。

0 个答案:

没有答案