【发布时间】:2018-03-28 22:59:40
【问题描述】:
我是 Nodejs 的新手。我正在使用 node、express 和 Postgres DB 创建 api。
const {Pool} = require('pg');
//const connectionString = process.env.DATABASE_URL || 'postgres://localhost:5432/springmvctutorial';
var http = require("http");
var express = require('express');
const router = express.Router();
const app = express();
var bodyParser = require('body-parser');
var apiVersion = '/api/v1/';
const poo = new Pool({
database: 'springmvctutorial',
host: 'localhost',
user: 'postgres',
password : 'root',
port: 5432,
max: 20,
idleTimeoutMillis: 30000,
connectionTimeoutMillis: 2000,
})
app.use( bodyParser.json() ); // to support JSON-encoded bodies
app.use(bodyParser.urlencoded({ // to support URL-encoded bodies
extended: true
}));
//create app server
var server = app.listen(3030, "localhost", function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s", host, port)
});
router.post('/api/v1/postData', (req, res, next) => {
poo.connect((err, client, release) => {
if (err) {
return console.error('Error acquiring client', err.stack);
}
client.query('INSERT INTO items(text, complete) values(1,false)', (err, result) => {
release();
if (err) {
return console.error('Error executing query', err.stack);
}
console.log(result.rows);
});
});
});
module.exports = router;
我的表和数据库已创建。我从 Postgres CLI 检查。但是当我使用节点 main.js 运行我的 main.js 文件时。它开始监听本地主机上的端口,但是当我开火时,
http://127.0.0.1:3030/api/v1/postData
它给出了 404 资源未找到错误。
我从邮递员那里得到的信息是,
{
"text":"user@gmail.com",
"complete": true
}
【问题讨论】:
-
你能给我们提供你正在点击的链接吗?如果它是发布的还是获取的?您是否尝试通过 localhost 访问它?
-
我正在从本地主机尝试。这是发布请求。
标签: javascript node.js postgresql express