Node.js 为什么我无法在端口3005上监听控制台日志?

Node.js 为什么我无法在端口3005上监听控制台日志?,node.js,postgresql,api,express,Node.js,Postgresql,Api,Express,我刚刚开发了一个Node/Express API,它应该连接到PostgreSQL数据库,在我在index.js中编写了这篇文章之后: const app = require('./src/app'); const pool = require('./src/pool'); pool.connect({ host: 'locahost', port: 5432, database: 'socialnetworking', user: '<my-username>',

我刚刚开发了一个Node/Express API,它应该连接到PostgreSQL数据库,在我在
index.js
中编写了这篇文章之后:

const app = require('./src/app');
const pool = require('./src/pool');

pool.connect({
  host: 'locahost',
  port: 5432,
  database: 'socialnetworking',
  user: '<my-username>',
  password: ''
}).then(() => {
  app().listen(3005, () => {
    console.log('Listening on port 3005');
  });
}).catch((err) => console.error(err));
现在,
return
正在从该
connect()
函数返回承诺。这就是
return
所做的,它是一个承诺,只有当查询成功解析时才会解决,但是如果问题是它没有正确解析,为什么没有抛出错误

app.js
具有:

const express = require('express');
const usersRouter = require('./routes/users');

module.exports = () => {
  const app = express();

  app.use(express.json());
  app.use(usersRouter);

  return app;
};

答案是疯狂的,我只是删除了我的
index.js
文件,然后再次重写,代码与以前一样:

const app = require('./src/app');
const pool = require('./src/pool');

pool.connect({
  host: 'localhost',
  port: 5432,
  database: 'socialnetworking',
  user: '<my-username>',
  password: ''
}).then(() => {
  app().listen(3005, () => {
    console.log('Listening on port 3005');
  });
}).catch((err) => console.error(err));
const-app=require('./src/app');
const pool=require('./src/pool');
pool.connect({
主机:“localhost”,
港口:5432,
数据库:“社交网络”,
用户:“”,
密码:“”
}).然后(()=>{
应用().听(3005,()=>{
log('在端口3005上侦听');
});
}).catch((err)=>console.error(err));

现在它可以工作了。当我故意破坏它时,它似乎仍然没有捕捉到错误,而是像以前一样挂起,但除此之外,它正在工作,据我所知,使用的代码与以前完全相同。

请告诉我们
需要什么('./src/app')导出。如果你用通常的命名方式命名事物,那么它将是
app.listen(…)
,而不是
app()。listen(…)
。如果你把
控制台.log(“数据库连接”)
作为
处理程序的第一行。那么()
你看到了吗?还是它没有到达那里?以下是一些基本的调试步骤,您需要采取这些步骤来跟踪代码正在或未达到的程度。@jfriend00,我尝试了这种方式,但它似乎仍然挂起并且没有返回
在端口3005上收听。如果您不回答我的问题,我将无法帮助您。它到底到达了
console.log()
吗?这里的问题是,是DB没有解决它的承诺,还是服务器没有启动。它是哪一个?它永远不会到达
控制台.log()
const app = require('./src/app');
const pool = require('./src/pool');

pool.connect({
  host: 'localhost',
  port: 5432,
  database: 'socialnetworking',
  user: '<my-username>',
  password: ''
}).then(() => {
  app().listen(3005, () => {
    console.log('Listening on port 3005');
  });
}).catch((err) => console.error(err));