【问题标题】:Client.query not retrieving data in Node JSClient.query 未在 Node JS 中检索数据
【发布时间】:2020-04-29 11:34:16
【问题描述】:

我在一个连接到我的 PosgreSQL 数据库的 Web 应用程序中工作,但是当我转到主页时,它假设检索表 actor 的第一个元素,但在我的代码下方没有检索任何内容。我检查了连接 U​​RL,是正确的用户名、密码、端口和数据库。

const express = require('express');
const bodyParser = require('body-parser');
const session = require("express-session");
const { Client } = require('pg');
const connectionString = 'postgres://postgres:12345@localhost:55306/dvdrental';
const cookieParser = require("cookie-parser");

const client = new Client({
    connectionString: connectionString
});

client.connect();

const app = express();

app.use(express.json());

app.use(bodyParser.urlencoded({ extended: false }));

app.use(cookieParser("[mysecrethere]"));

app.use(session({
    secret: "Dog",
    resave: true,
    saveUninitialized: true,
}));


app.get('/', function (req, res) {

   client.query('SELECT * FROM actor', [1], function (err, result) {
              if (err) {
                console.log(err)
               } else {
                 console.log(result);
               }
     });
});

【问题讨论】:

    标签: javascript sql node.js postgresql express


    【解决方案1】:

    您应该最终确定您的中间件以从数据库中返回数据。 例如,您的代码改动很小:

    app.get('/', function (req, res) {
        client.query('SELECT * FROM actor', [1], function (err, result) {
              if (err) {
                console.log(err)
                return res.status(500).json(err.detail)
               }
               console.log(result);
               res.status(200).json(result.rows)
        });
    });
    

    【讨论】:

    • 我尝试完成中间件,但仍然无法正常工作。
    • 抱歉,现在可以了,我忘了前段时间我把端口号改成了 5433。
    猜你喜欢
    • 2014-11-15
    • 1970-01-01
    • 2021-06-21
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多