如何解决Node-Postgres UnhandledPromiseRejectionWarning:错误:查询必须具有文本或名称既不提供也不支持
我目前在尝试使用 node-postgres Pool 时遇到以下 UnhandledPromiseRejectionWarning 错误,但我很难理解它来自哪里以及我需要查看什么来修复它:
"(node:14208) UnhandledPromiseRejectionWarning: 错误:查询必须 有文字或名称。既不提供也不支持。 ... (节点:14208)未处理的承诺拒绝警告:未处理的承诺 拒绝。此错误源于抛出异步 没有 catch 块的函数,或者通过拒绝一个承诺 没有用 .catch() 处理。” ...
index.js
const express = require('express');
const app = express();
const db = require("./database");
const adminRouter = require('./routes/admin');
const homeRouter = require('./routes/home');
const aboutRouter = require('./routes/about');
const collectionRouter = require('./routes/collection');
const contactRouter = require('./routes/contact');
app.use(express.static('public'));
app.listen(3000,function(){
console.log("Server Running...");
})
app.use(db.query);
app.use(adminRouter);
app.use(homeRouter);
app.use(aboutRouter);
app.use(collectionRouter);
app.use(contactRouter);
database.js
const express = require('express');
const Pool = require('pg').Pool;
const router = express.Router();
//insures that the .env file is only run in a development environment and not a production environment
if(process.env.NODE_ENV !== 'production'){
//requires the the .env file configuration be run first hiding all info hidden via the .env file
require('dotenv').config();
}
const pool = new Pool({
user: "postgres",password: process.env.DB_PW,host: "localhost",port: 5432,database: "store",max: 20,connectionTimeoutMillis: 0,idleTimeoutMillis: 0
});
module.exports = {
query: (text,params) => {
return pool.query(text,params)
}
}
路线
const express = require('express');
const router = express.Router();
const db = require("../database");
//Comics
router.get('/collection/comics',async(req,res) => {
try{
const { id } = req.params;
const item = await db.query("SELECT * FROM collection",[id]);
}catch(err){
console.log(err);
}
res.render('comics',{title: 'Comics',condition: false});
})
...
module.exports = router;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。