Node.js和Express.js简介

Node.js是一个流行的服务器端JavaScript运行环境,用于构建高性能的网络应用程序。Express.js是一个Node.js的Web应用程序框架,它提供了用于创建Web和API应用程序的核心功能,如路由、中间件和HTTP请求处理。

以下是一些关键Node.js和Express.js特点:

  • 非阻塞和事件驱动:Node.js使用事件循环来处理多个并发连接,使其非常高效。
  • 模块化:Node.js支持模块化编程,允许你轻松管理代码。
  • 丰富的包管理器:Node.js的包管理器npm使你能够轻松地安装、更新和共享代码库。

创建一个简单的Node.js和MongoDB RESTful API

首先,确保你已经安装了Node.js和MongoDB。接下来,让我们创建一个简单的Node.js和MongoDB RESTful API。

  1. 创建一个新的Node.js项目
    在你的项目文件夹中打开终端并执行以下命令来初始化一个新的Node.js项目:
npm init -y
  1. 安装Express.js和MongoDB驱动
    执行以下命令来安装Express.js和MongoDB驱动:
npm install express mongoose --save

这将安装Express.js和Mongoose,它是一个用于连接和操作MongoDB的Node.js库。

  1. 创建一个Express.js应用程序
    在项目文件夹中创建一个名为app.js的文件,并添加以下代码来创建一个Express.js应用程序:
const express = require('express');
const mongoose = require('mongoose');
const app = express();
const port = 3000;

// 连接到MongoDB
mongoose.connect('mongodb://localhost/myapi', { useNewUrlParser: true, useUnifiedTopology: true });

// 定义任务模型
const Task = mongoose.model('Task', { title: String, description: String });

// 解析请求体为JSON
app.use(express.json());

// 创建任务
app.post('/api/tasks', async (req, res) => {
    const { title, description } = req.body;
    const task = new Task({ title, description });
    await task.save();
    res.json(task);
});

// 获取所有任务
app.get('/api/tasks', async (req, res) => {
    const tasks = await Task.find();
    res.json(tasks);
});

// 启动服务器
app.listen(port, () => {
    console.log(`Server is running on port ${port}`);
});
  1. 启动应用程序
    在终端中执行以下命令启动应用程序:
node app.js

你的API现在运行在 http://localhost:3000 上。

  1. 测试API
    使用工具如cURL、Postman或浏览器来测试API的不同端点,例如 /api/tasks/api/tasks