簡體   English   中英

發布請求時節點獲取空數組的結果

[英]Node getting empty array as result when post request

我正在郵遞員上測試我的張貼方法。 每當我發布結果時,它將顯示空數組[]。 我在節點側控制台記錄了日志,它也返回空數組。

CREATE TABLE users (
    user_id SERIAL PRIMARY KEY,
    username TEXT,
    email TEXT,
    password TEXT
)

INSERT INTO users (username, email, password) VALUES ($1, $2, $3);


app.post('/api/users', function(req, res, next) {
    db.post_user([req.body.username, req.body.email, req.body.password], function(err, user) {
        console.log(user);
        if(err) res.status(500).send(err);
        else res.json(user);
    })
})

我不確定為什么我要獲取空數組而不是傳遞實際數據。 在此處輸入圖片說明

var express = require('express');
var bodyParser = require('body-parser');
var session = require('express-session');
var cors = require('cors');
var massive = require('massive');
var config = require('./config');
var app = express();

app.use(bodyParser.json());
app.use(cors());

var db = massive.connect({connectionString: config.connectionString},     function(err, localdb){
    db = localdb;
    app.set('db', db);

});

app.get('/api/users', function(req, res, next) {
    db.get_users(function(err, users) {
        if(err) res.status(500).json(err);
        else res.json(users);
    })
})
app.post('/api/users', function(req, res, next) {
    db.post_user([req.body.username, req.body.email, req.body.password], function(err, user) {
        console.log(req.body);
        if(err) res.status(500).send(err);
        else res.json(user);
    })
})

app.listen(3000, function() {
    console.log("I am listening");
})

因為您需要執行以下操作:

let query = "INSERT INTO users (username, email, password) VALUES (?, ?, ?)"
let values = [req.body.username, req.body.email, req.body.password]
connection.query(query, values).then(function(user...)

取決於您使用的是哪個圖書館

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM