首页 > 解决方案 > 没有数据被插入到我的数据库中

问题描述

我正在尝试使用 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}.`)
})

标签: javascriptnode.jspostgresql

解决方案


推荐阅读