Node.js API with PostgreSQL 项目教程

Node.js API with PostgreSQL 项目教程

node-api-postgresRESTful API with Node.js, Express, and Postgres.项目地址:https://gitcode.com/gh_mirrors/no/node-api-postgres

1. 项目的目录结构及介绍

node-api-postgres/
├── config/
│   └── db.js
├── controllers/
│   └── bookController.js
├── models/
│   └── book.js
├── routes/
│   └── bookRoutes.js
├── utils/
│   └── helpers.js
├── .env
├── .gitignore
├── package.json
├── server.js
└── README.md
  • config/:包含数据库配置文件。
  • controllers/:包含处理请求的控制器文件。
  • models/:包含数据库模型文件。
  • routes/:包含路由定义文件。
  • utils/:包含辅助函数文件。
  • .env:环境变量配置文件。
  • .gitignore:Git忽略文件配置。
  • package.json:项目依赖和脚本配置。
  • server.js:项目启动文件。
  • README.md:项目说明文档。

2. 项目的启动文件介绍

server.js 是项目的启动文件,主要负责启动服务器和连接数据库。以下是 server.js 的主要内容:

require('dotenv').config();
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const bookRoutes = require('./routes/bookRoutes');
const db = require('./config/db');

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));

app.use('/api/books', bookRoutes);

const PORT = process.env.PORT || 3000;

db.connect()
  .then(() => {
    app.listen(PORT, () => {
      console.log(`Server running on port ${PORT}`);
    });
  })
  .catch((err) => {
    console.error('Unable to connect to the database:', err);
  });
  • require('dotenv').config();:加载环境变量。
  • express:引入 Express 框架。
  • bodyParser:引入 body-parser 中间件。
  • app.use(bodyParser.json());:使用 JSON 解析中间件。
  • app.use(bodyParser.urlencoded({ extended: true }));:使用 URL 编码解析中间件。
  • app.use('/api/books', bookRoutes);:挂载路由。
  • db.connect():连接数据库。
  • app.listen(PORT, () => { ... });:启动服务器。

3. 项目的配置文件介绍

config/db.js 是数据库配置文件,主要负责数据库的连接。以下是 db.js 的主要内容:

const { Pool } = require('pg');

const pool = new Pool({
  user: process.env.DB_USER,
  host: process.env.DB_HOST,
  database: process.env.DB_NAME,
  password: process.env.DB_PASSWORD,
  port: process.env.DB_PORT,
});

module.exports = {
  async connect() {
    try {
      await pool.connect();
      console.log('Connected to the database');
    } catch (err) {
      console.error('Database connection failed', err.stack);
    }
  },
  query(text, params) {
    return pool.query(text, params);
  },
};
  • const { Pool } = require('pg');:引入 PostgreSQL 连接池。
  • new Pool({ ... });:创建数据库连接池,使用环境变量配置连接参数。
  • module.exports = { ... };:导出连接和查询方法。
  • async connect() { ... }:连接数据库。
  • query(text, params) { ... }:执行 SQL 查询。

以上是 Node.js API with PostgreSQL 项目的目录结构、启动文件和配置文件的详细介绍。希望这份教程能帮助你更好地理解和使用该项目。

node-api-postgresRESTful API with Node.js, Express, and Postgres.项目地址:https://gitcode.com/gh_mirrors/no/node-api-postgres

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郁欣秋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值