javascript - 没有数据被插入到我的数据库中
问题描述
我正在尝试使用 POST 请求将数据插入到我的数据库中。数据正在发送到我的服务器,但是当我尝试将其插入到我的数据库中时,它什么也没做。甚至查询中的 console.log 也被发送到控制台。req.file
也显示了正确的信息。
var express = require('express');
var app = express();
var multer = require('multer');
var cors = require('cors');
var bodyParser = require('body-parser');
const port = 8000;
const Pool = require('pg').Pool
const pool = new Pool({
user: 'me',
host: 'localhost',
database: 'api',
password: 'password',
port: 5432,
})
app.use(cors())
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'public')
},
filename: function (req, file, cb) {
cb(null, Date.now() + '-' +file.originalname)
}
})
var upload = multer({ storage: storage });
app.post('/upload', upload.single('file'), function(req, res) {
message: "Error! in image upload."
if (!req.file) {
console.log("No file recieved");
message = "Error! in image upload."
console.log("status: danger");
} else {
console.log('file recieved');
console.log(req.file);
var query = pool.query('INSERT INTO file (name, type, size) VALUES ($1, $2, $3)', [req.file.filename , req.file.mimetype, req.file.size], function(err, result) {
console.log('inserted data')
});
message = "Successfully uploaded";
console.log("status: success");
}
})
app.listen(port, () => {
console.log(`App running on port ${port}.`)
})
解决方案
推荐阅读
- python - 使用 uvicorn 在同一线程中运行多个 asgi 应用程序
- node.js - 如何模拟“TLS 握手超时”[ERR_TLS_HANDSHAKE_TIMEOUT] 超时错误?
- mbedtls - 客户端 ssl 使用 mbedtls 使用 C
- android - 在 webview 内的 texarea 上键入时出现 android 软键盘问题
- java - Java Rest Assured 如何更新嵌套 json 对象的值?
- java - 无法从数组中随机搜索项目
- python - 对于具有相同值但初始化不同的列表,Python append() 似乎工作不一致 - 需要解释
- python - 用例依赖于清洁架构中的其他用例
- laravel - 使用 cf push 通过 bluemix/ibm 云部署 laravel 6 应用程序根本不起作用
- java - 使用 JMS 从 AQ 队列中取出 Non_Persistent 消息