Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >后端实战教程:如何使用 Node.js 开发 RESTful API 接口(Node.js + Express + Sequelize + MySQL)

后端实战教程:如何使用 Node.js 开发 RESTful API 接口(Node.js + Express + Sequelize + MySQL)

原创
作者头像
蒋川@卡拉云
发布于 2022-07-11 11:44:05
发布于 2022-07-11 11:44:05
12.5K0
举报
如何使用 Node.js 开发 RESTful API 接口(Node.js + Express + Sequelize + MySQL)
如何使用 Node.js 开发 RESTful API 接口(Node.js + Express + Sequelize + MySQL)

本教程手把手教你搭建一套使用 Node.js + Express + Sequelize + MySQL 构建的后端服务,详细描述通过 Node.js 与数据库通讯。整个服务搭建起来后,我们使用 Postman 对整个后端服务进行测试。本教程每段代码我都亲手测过,保证百分百没有错误,请打开你的 terminal 跟随本教程一起操作,从这里开始,成为一名后端工程师。

全栈实战教程:

后端实战教程:

如果你正在搭建后台管理工具,又不想处理前端问题,推荐使用卡拉云,卡拉云是新一代低代码开发工具,可一键接入常见数据库及 API ,无需懂前端,仅需拖拽即可快速搭建属于你自己的后台管理工具,一周工作量缩减至一天,详见本文文末。

crud-er
crud-er

后端部分:node.js + Express + Sequelize + MySQL

  • node.js 是整个后端的框架
  • 使用 Express 生成
  • Sequelize ORM
  • MySQL

后端部分 - node.js + Express + MySQL 后端部分

后端部分我们使用 node.js + Express + MySQL 的方式来构建。node.js 是一个开源跨平台运行环境,它让 JavaScript 可以运行在后端服务器上,Express 是 node.js Web app 框架,其底层是对 node.js 的 HTTP 模块封装,增加路由中间件等特性,我们会在本教程中使用 Express 搭建 RESTful API ,让前后端通过 API 进行数据交换。最后是 MySQL 数据库,最终前后端操作的数据会存放在 MySQL 数据库中。

后端 node.js 项目结构

06-01-node
06-01-node
  • db.config.js 包含远程连接 MySQL 数据库的登录参数
  • server.js 包含 Express Web 服务器初始化配置
  • models/index.js 包含 MySQL 数据库的配置信息
  • models/todo.model.js : 包含 Sequelize 数据模型
  • controllers/todo.controller.js:包含所有增删改查操作的路由

好了,整体的后端服务器架构介绍就到这里,接下来进入实践环节,请打开你的 Terminal 我们一起来。切记,只有亲手实践过,才能透彻理解。

安装 node.js

node.js 是一种 JavaScript 的运行环境,它可以让 JS 脱离浏览器在后端服务器上运行。本教程的后端环境使用 node.js 搭建。请先确认你的计算机中是否已安装 node.js 。如果尚未安装请前往 node 官网下载安装

安装或准备可远程连接的 MySQL 数据库

本教程搭建的 app 数据存放在 MySQL 中,你可以在本机安装 MySQL ,也可以准备一台可远程连接的 MySQL 数据库。

如果你还没有安装 MySQL 数据库,可根据《如何安装 MySQL》教程安装 MySQL 数据库,或在腾讯云之类的云服务商购买现成的 MySQL 数据库。

准备好 node.js 和 MySQL 数据库后,咱们就开始搭建后端部分。

创建 node.js App

在根目录创建 node.js 的项目文件夹

代码语言:txt
AI代码解释
复制
mkdir nodejs-express-sequelize-mysql-kalacloud
cd nodejs-express-sequelize-mysql-kalacloud

接下来配置后端的所有操作都在 nodejs-express-sequelize-mysql-kalacloud 这个文件夹中完成。

我们先来初始化 node.js,使用 npm init 配置 package.json 文件。package.json 定义了当前项目所需要的各种模块以及项目配置信息(包含当前项目所需的开发和运行环境等信息)。

06-02-node-init
06-02-node-init
代码语言:txt
AI代码解释
复制
npm init
name: (nodejs-express-sequelize-mysql)
version: (1.0.0)
description: Node.js Rest Apis with Express, Sequelize , MySQL.
entry point: (index.js) server.js
test command:
git repository:
keywords: nodejs, express, sequelize, mysql, rest, api
author: kalacloud
license: (ISC)
Is this ok? (yes) yes

跟随 node.js 初始化程序填写相应的 app 初始化信息。

代码语言:txt
AI代码解释
复制
{
  "name": "nodejs-mysql-kalacloud-com",
  "version": "1.0.0",
  "description": "Node.js Rest Apis with Express, Sequelize , MySQL.",
  "main": "server.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [
    "nodejs",
    "express",
    "sequelize",
    "mysql",
    "rest",
    "api"
  ],
  "author": "kalacloud",
  "license": "ISC"
}

初始化程序填写完成之后,npm 会自动帮你在根目录下生成package.json 配置文件。

接着我们来安装项目中需要用到的模块:expresssequelizemysql2body-parser

在项目根目录 nodejs-express-sequelize-mysql-kalacloud 执行 npm 命令:

代码语言:txt
AI代码解释
复制
npm install express sequelize mysql2 body-parser cors --save

配置 Express Web 服务器

在根目录中,创建一个新的 server.js 文件

文件位置:nodejs-express-sequelize-mysql-kalacloud/server.js

代码语言:txt
AI代码解释
复制
const express = require("express");
const bodyParser = require("body-parser");
const cors = require("cors");

const app = express();

var corsOptions = {
  origin: "*"
};

app.use(cors(corsOptions));

// content-type:application/json
app.use(bodyParser.json());

// content-type:application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: true }));

// 简单路由
app.get("/", (req, res) => {
  res.json({ message: "欢迎访问卡拉云后端服务器" });
});

// 设置监听端口
const PORT = process.env.PORT || 8080;
app.listen(PORT, () => {
  console.log(`服务器运行端口: ${PORT}.`);
});
  • 我们导入了 expressbody-parsercors 模块
  • express 用于构建 Rest API 帮助前后端实现通讯。
  • body-parser 用于解析请求并创建 req.body 对象
  • cors 提供 Express 中间件
  • corsOptions 这里设置了可访问后端的前端来源为 * ,这意味着任何前端都可以接入此后端。这样设置并不安全,为了避免「跨域问题」,先这么设置。之后请在这里限制可访问的前端服务器。
  • 后端服务在 8080 端口上侦听指令
06-03-node-server
06-03-node-server

好,现在我们在根目录运行指令:node server.js 启动后端服务器。

node-chrome
node-chrome

在浏览器中输入 http://localhost:8080 ,你可以看到后端服务器欢迎信息,这表明我们的后端服务器已经启动。

使用 Sequelize 连接数据库

Sequelize 是一个基于 Promise 的 Node.js ORM,目前支持 Postgres、MySQL、SQLite 和 Microsoft SQL Server。 它是一个很成熟的框架,有很好的性能和速度。

我们先来配置 Sequelize ,在根目录新建 app 文件夹,然后再其中建一个 config 文件夹,我们把 Sequelize 的配置文件放在这里,新建 db.config.js 文件,在这个文件中写入你数据库连接的配置信息。

文件位置:nodejs-express-sequelize-mysql-kalacloud/app/config/db.config.js

代码语言:txt
AI代码解释
复制
module.exports = {
  HOST: "192.168.1.5",
  USER: "kalacloud",
  PASSWORD: "YOUR_PASSWORD",
  DB: "demo",
  port:3306,
  dialect: "mysql",
  pool: {
    max: 5,
    min: 0,
    acquire: 30000,
    idle: 10000
  }
};
  • HOST 这里是你的 MySQL 服务器地址,如果数据库跑在本地就是 loaclhost,如果在腾讯云等云服务上,就填写云服务给你的数据库地址,比如 cdb-5nvdsixo.bj.tencentcdb.com 这是腾讯云的数据库地址样式。
  • USER 数据库登录用户名
  • PASSWORD 用户名对应的登录密码
  • DB 数据库名称
  • port 数据库远程访问端口
  • max 最大连接数
  • min 最小连接数
  • acquire 超时时间
  • idle 空闲时间

更多细节可访问 Sequelize 参数映射表 查看更多

初始化 Sequelize

我们将在 app / models 文件夹中初始化 Sequelize。

app/models 新建 index.js 文件并写入以下代码。

文件位置:nodejs-express-sequelize-mysql-kalacloud/app/models/index.js

代码语言:txt
AI代码解释
复制
const dbConfig = require("../config/db.config.js");

const Sequelize = require("sequelize");
const sequelize = new Sequelize(dbConfig.DB, dbConfig.USER, dbConfig.PASSWORD, {
  host: dbConfig.HOST,
  dialect: dbConfig.dialect,
  operatorsAliases: false,

  pool: {
    max: dbConfig.pool.max,
    min: dbConfig.pool.min,
    acquire: dbConfig.pool.acquire,
    idle: dbConfig.pool.idle
  }
});

const db = {};

db.Sequelize = Sequelize;
db.sequelize = sequelize;

db.todos = require("./todo.model.js")(sequelize, Sequelize);

module.exports = db;

这里的todo.model.js 是一个用来操作数据库的 sequelize 模型,用于前端发出指令,后端接受指令后操作数据库,后文会具体讲解。本文的前端配套教程《全栈实战:手把手教你用 Vue+Nodejs 开发「待办清单」app

然后在根目录下的 server.js 文件里添加 sync() 调用的方法:

文件位置:nodejs-express-sequelize-mysql-kalacloud/server.js

代码语言:txt
AI代码解释
复制
const express = require("express");
const bodyParser = require("body-parser");
const cors = require("cors");

const app = express();

var corsOptions = {
  origin: "http://localhost:8081"
};

app.use(cors(corsOptions));

// content-type:application/json
app.use(bodyParser.json());

// content-type:application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: true }));

// 简单路由
app.get("/", (req, res) => {
  res.json({ message: "欢迎访问卡拉云后端服务器" });
});

// 设置监听端口
const PORT = process.env.PORT || 8080;
app.listen(PORT, () => {
  console.log(`服务器运行端口: ${PORT}.`);
});

const db = require("./app/models");
db.sequelize.sync();

在结尾处添加这两行即可,你可以直接把 server.js 里的代码全删掉,然后复制上面的代码进去,保证你的项目代码与本教程完全一致。

定义 Sequelize Model

models 文件夹中,像这样创建 todo.model.js 文件

文件位置:nodejs-express-sequelize-mysql-kalacloud/app/models/todo.model.js

代码语言:txt
AI代码解释
复制
module.exports = (sequelize, Sequelize) => {
  const Todo = sequelize.define("todo", {
    title: {
      type: Sequelize.STRING
    },
    description: {
      type: Sequelize.STRING
    },
    status: {
      type: Sequelize.BOOLEAN
    }
  });

  return Todo;
};

Sequelize Model 是向 MySQL 中指定数据库的写入列,这里会自动生成 ID,title,description,status,createdAt,updatedAt 这六个列。

初始化 Sequelize 之后,我们不需要在写任何增删改查函数,直接调就可以了。

  • 创建一个新清单:[create](https://sequelize.org/master/class/lib/model.js~Model.html#static-method-create)(object)
  • 通过 id 查找清单:[findByPk](https://sequelize.org/master/class/lib/model.js~Model.html#static-method-findByPk)(id)
  • 获取所有待办清单:[findAll](https://sequelize.org/master/class/lib/model.js~Model.html#static-method-findAll)()
  • 根据 ID 更新清单:[update](https://sequelize.org/master/class/lib/model.js~Model.html#static-method-update)(data, where: { id: id })
  • 根据 ID 删除清单:[destroy](https://sequelize.org/master/class/lib/model.js~Model.html#static-method-destroy)(where: { id: id })
  • 删除所有清单:destroy(where: {})
  • 在所有清单中按标题查找:findAll({ where: { title: ... } })

是不是超级方便,这些函数,我们会在接下来创建的「控制器」中使用。

创建控制器(controllers)

app/controllers 文件夹中,我们来创建一个控制器 todo.controller.js ,把上面 Sequelize 写入控制器来操作数据。

文件位置:nodejs-express-sequelize-mysql-kalacloud/app/controllers/todo.controller.js

代码语言:txt
AI代码解释
复制
const db = require("../models");
const Todo = db.todos;
const Op = db.Sequelize.Op;

// 创建并保存一条清单
exports.create = (req, res) => {
  // Validate request
  if (!req.body.title) {
    res.status(400).send({
      message: "内容不能为空"
    });
    return;
  }

  // 创建一条清单
  const todo = {
    title: req.body.title,
    description: req.body.description,
    stauts: req.body.stauts ? req.body.stauts : false
  };

  // 将清单保存到数据库
  Todo.create(todo)
    .then(data => {
      res.send(data);
    })
    .catch(err => {
      res.status(500).send({
        message:
          err.message || "创建清单是发生错误。"
      });
    });
};

// 从数据库中搜索.
exports.findAll = (req, res) => {
  const title = req.query.title;
  var condition = title ? { title: { [Op.like]: `%${title}%` } } : null;

  Todo.findAll({ where: condition })
    .then(data => {
      res.send(data);
    })
    .catch(err => {
      res.status(500).send({
        message:
          err.message || "搜索时,发生错误。"
      });
    });
};

// 按照条目 ID 搜索
exports.findOne = (req, res) => {
  const id = req.params.id;

  Todo.findByPk(id)
    .then(data => {
      if (data) {
        res.send(data);
      } else {
        res.status(404).send({
          message: `没有找到 ${id} 的清单`
        });
      }
    })
    .catch(err => {
      res.status(500).send({
        message:  `查询第 ${id} 条清单时出错`
      });
    });
};

// 更新指定 ID 清单
exports.update = (req, res) => {
  const id = req.params.id;

  Todo.update(req.body, {
    where: { id: id }
  })
    .then(num => {
      if (num == 1) {
        res.send({
          message: "更新成功"
        });
      } else {
        res.send({
          message: `第 ${id} 条更新失败。`
        });
      }
    })
    .catch(err => {
      res.status(500).send({
        message: `更新第 ${id} 条清单时出错`
      });
    });
};

// Delete a Todo with the specified id in the request
exports.delete = (req, res) => {
  const id = req.params.id;

  Todo.destroy({
    where: { id: id }
  })
    .then(num => {
      if (num == 1) {
        res.send({
          message: "删除成功"
        });
      } else {
        res.send({
          message: `删除第${id}条清单失败。`
        });
      }
    })
    .catch(err => {
      res.status(500).send({
        message: "不能删除清单:" + id
      });
    });
};

// 删除数据库中所有清单
exports.deleteAll = (req, res) => {
  Todo.destroy({
    where: {},
    truncate: false
  })
    .then(nums => {
      res.send({ message: `删除${nums}条清单 ` });
    })
    .catch(err => {
      res.status(500).send({
        message:
          err.message || "删除所有清单时出错"
      });
    });
};

// 检查所有清单状态
exports.findAllstauts = (req, res) => {
  Todo.findAll({ where: { stauts: true } })
    .then(data => {
      res.send(data);
    })
    .catch(err => {
      res.status(500).send({
        message:
          err.message || "搜索清单时出错"
      });
    });
};

至此,整个后端部分就搭建完成了,我们把后端运行起来看看效果。

运行 Node.js Express 服务器

在 node.js 服务器根目录,运行 node server.js

06-04-node-all-server
06-04-node-all-server

控制台显示对数据库的读写,每当前端调用后端时,这里就会给出对应后端操作了写什么的 log

使用 Postman 调用 node.js 后端测试 API

06-06-postman
06-06-postman

后端搭建起来后,我们可以使用 postman 来对它进行测试。

扩展阅读:

Vue + Node.js 前后端分离搭建实战,手把手教你用 Vue+Nodejs 开发「待办清单」app

Node.js 后端搭建总结

Node.js 接收前端指令,根据前端指令操作数据库 CRUD,相当方便。学会前后端是成为全栈工程师的基础技能。但如果你只想专注在解决实际问题,不想写代码,推荐使用卡拉云,卡拉云内置多种常用组件,无需懂前后端,仅需拖拽即可快速生成你需要的后台管理工具。

下面是用卡拉云搭建的数据库 CURD 后台管理系统,只需拖拽组件,即可在10分钟内完成搭建。

可直接分享给同事一起使用:https://my.kalacloud.com/apps/8z9z3yf9fy/published

卡拉云可帮你快速搭建企业内部工具,下图为使用卡拉云搭建的内部广告投放监测系统,无需懂前端,仅需拖拽组件,10 分钟搞定。你也可以快速搭建一套属于你的后台管理工具。

卡拉云企业内部工具
卡拉云企业内部工具

卡拉云是新一代低代码开发平台,与前端框架 Vue、React等相比,卡拉云的优势在于不用首先搭建开发环境,直接注册即可开始使用。开发者完全不用处理任何前端问题,只需简单拖拽,即可快速生成所需组件,可一键接入常见数据库及 API,根据引导简单几步打通前后端,数周的开发时间,缩短至 1 小时。立即免费试用卡拉云

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Express,Sequelize和MySQL的Node.js Rest API示例
本文翻译自Node.js Rest APIs example with Express, Sequelize & MySQL
ccf19881030
2020/11/10
13.1K0
Express,Sequelize和MySQL的Node.js Rest API示例
React + Node.js 全栈实战教程 - 手把手教你搭建「文件上传」管理后台
本教程手把手带领大家搭建一套通过 React + Node.js + Mongodb 上传文件的后台系统,只要你跟随本教程一步步走,一定能很好的理解整个前后端上传文件的代码逻辑。前端我们使用 Reactjs + Axios 来搭建前端上传文件应用,后端我们使用 Node.js + Express + Multer + Mongodb 来搭建后端上传文件处理应用。
蒋川@卡拉云
2022/07/11
15.9K0
React + Node.js 全栈实战教程 - 手把手教你搭建「文件上传」管理后台
Vue + Node.js 搭建「文件上传」管理后台
本教程手把手带领大家搭建一套通过 Vue + Node.js 上传文件的后台系统,只要你跟随本教程一步步走,一定能很好的理解整个前后端上传文件的代码逻辑。前端我们使用 Vue + Axios + Multipart 来搭建前端上传文件应用,后端我们使用 Node.js + Express + Multer 来搭建后端上传文件处理应用。
蒋川
2022/04/22
12.5K0
Vue + Node.js 搭建「文件上传」管理后台
Express.js Tutorial: Build RESTful APIs with Node and Express | Mosh
在Youtube上看到Mosh的一篇关于使用Node和Express构建RESTful APIs的示例,对应的视频地址是:Express.js Tutorial: Build RESTful APIs with Node and Express | Mosh,作者Mosh的Youtube地址是:Programming with Mosh
ccf19881030
2020/05/18
1.7K0
Express(一) ——简单入门
背景:参加的青训营项目,使用 Express 来实现后端,个人被分配到后端去。于是,简单速通了下 Express。项目结束,回头写下笔记,沉淀一下。
赤蓝紫
2023/01/02
3.7K0
Express(一) ——简单入门
快速构建Express服务
使用 TypeScript、Express、Mongoose 和 pnpm 可以快速构建后端服务,并实现增删改查以及列表查询的功能。下面是一个简单的示例:
@派大星
2024/01/31
3140
快速构建Express服务
✅快速构建Express服务
使用 TypeScript、Express、Mongoose 和 pnpm 可以快速构建后端服务,并实现增删改查以及列表查询的功能。下面是一个简单的示例:
@派大星
2024/01/29
3580
使用Vue3和Node.js开发管理端系统实践
开始之前推荐一篇实用的文章:探索微信小程序的奇妙世界:从入门到进阶原创 ,这篇文章从入门到进阶,全面剖析小程序开发流程与技巧,适合各层次开发者,助力快速掌握并提升技能,推荐大家前往阅读。
flyskyocean
2024/12/02
4060
如何在Node.js和Express中上传文件
大量的移动应用程序和网站允许用户上传个人资料图片和其他文件。 因此,在使用Node.js和Express构建REST API时,通常需要处理文件上传。
ccf19881030
2020/10/26
6.9K0
如何在Node.js和Express中上传文件
Node.js+Express+Mysql 实现增删改查
这次选用nodejs+express+mysql 使用http作为客户端,express框架搭建服务端,从而实现数据的增删改查。这篇文章可以算作上篇文章的升级篇,加入了和数据库的交互。
用户5005176
2021/08/11
2.3K0
Node.js—Express使用、Express 路由 、Express 中间件、托管静态资源、使用 Express 写接口、node.js链接sqlite数据库
首先假定你已经安装了 Node.js,接下来为你的应用创建一个目录,然后进入此目录并将其作为当前工作目录。
HelloWorldZ
2024/03/20
2.4K3
Node.js—Express使用、Express 路由 、Express 中间件、托管静态资源、使用 Express 写接口、node.js链接sqlite数据库
node.js:试试express
Express 框架是一个快速、开放、极简的 web 应用开发框架,用于构建灵活和强大的 web 应用和 API。它是 Node.js 平台上最流行的框架之一,因为它提供了一套丰富的功能来简化和加速 web 开发过程。
姓王者
2024/12/20
1210
使用NodeJs(Express)搞定用户注册、登录、授权
首先做一下声明,本篇博客来源于BiliBili上全栈之巅主播Johnny的视频[1小时搞定NodeJs(Express)的用户注册、登录和授权(https://www.bilibili.com/video/av49391383),对其进行了整理。自己跟着视频做,感觉收获不少。 最近在学些NodeJs和Express框架开发后台接口,Express 是一个保持最小规模的灵活的 Node.js Web 应用程序开发框架,为 Web 和移动应用程序提供一组强大的功能。看到B站上全栈之巅-Node.js+Vue.js全栈开发深度爱好者和实践者,感觉Johnny博主的系列视频讲解得不错,其中看到一个视频是1小时搞定NodeJs(Express)的用户注册、登录和授权,介绍了在Express中怎么做用户登录和注册,以及jsonwebtoken的验证,需要在系统中安装MongoDB数据库;于是在自己的Windows10系统下使用VSCode跟着做,前提是要安装好NodeJs和Express开发环境,以及在Windows系统中配置好MongoDB数据库,关于在Windows下安装MongoDB可以参考菜鸟教程中的Windows 平台安装 MongoDB和windows环境下启动mongodb服务。
ccf19881030
2020/02/23
10.6K0
Express.js 4,Node.js,MongoDB REST API 简易教程
教程内容 采用测试驱动开发的方式,开发一个简单的 REST API,包括基本的 POST/GET/PUT/DELETE 操作 先编写好针对各个接口的测试代码,包括: 调用post接口插入一个对象 调用get接口获取某个对象的数据 调用get接口获取集合数据 调用put接口更新某个对象数据 调用get接口获取更新后的对象 调用delete接口删除对象 然后针对第一个测试进行代码编写,写完后执行测试,第一个测试通过后,继续开发下一个,再进行测试,这样迭代进行 测试框架采用 Mocha,WEB框架采用 Expre
dys
2018/04/04
2.8K0
Node.js RESTful API如何使用?
REST(Representational State Transfer)是一种软件架构风格,用于设计网络应用程序的通信方式。RESTful API 是基于 REST 架构风格的 API 设计,它使用标准的 HTTP 方法(GET、POST、PUT、DELETE 等)来进行资源的操作和交互。
网络技术联盟站
2023/07/07
5540
从零开始:Node.js服务端搭建教程
在当今数字化时代,Web应用开发已成为推动业务增长和创新的重要力量。随着JavaScript的普及,前端开发人员开始寻求在后端领域施展才华的途径。Node.js,这一革命性的平台,以其独特的事件驱动、非阻塞I/O模型,彻底改变了传统的服务器端开发模式。它让JavaScript不仅局限于浏览器环境,更能在服务器端高效运行,实现了前后端统一的开发语言,极大地提升了开发效率和应用性能。
Front_Yue
2024/12/24
8050
从零开始:Node.js服务端搭建教程
【Nodejs】Express实现接口
node-http模块 ==⇒ express框架 ==⇒ koa =⇒ egg.js
且陶陶
2023/05/09
1.6K0
【Nodejs】Express实现接口
《Node.js+Express+Vue项目实战》-- 1.安装和使用Express(笔记)
Express 是一个精简、灵活的 Node.js 的 Web 应用程序开发框架,为 Web 和移动应用程序提供了一组强大的功能,使用 Express 可以快速地开发一个 Web 应用。
爱学习的程序媛
2022/04/07
4.6K0
《Node.js+Express+Vue项目实战》-- 1.安装和使用Express(笔记)
Express新手入坑笔记之动态渲染HTML
这里的public不会显示在url中, 为了方便判别静态文件的url请求, 我们在public内新建一个static文件夹, 这样所有请求静态文件的url,都会以static开头(这里借鉴了django处理静态文件的方法)
zhaoolee
2018/12/26
3.8K0
Node JS 中间件如何工作?
你需要安装一些东西来创建、使用和测试 Express 中间件。首先需要 Node 和 NPM。为确保已经安装,可以运行:
疯狂的技术宅
2020/02/18
3.4K0
推荐阅读
相关推荐
Express,Sequelize和MySQL的Node.js Rest API示例
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档