基于Node.js的后端服务基础模块及应用

使用generator-express-no-stress-typescript脚手架工具创建一个图片上传服务的模板工程,执行如下指令:

复制代码
npm config set registry https://registry.npmmirror.com
yo express-no-stress-typescript uploadService

可以看到后端框架如下:

先输入终端npm run dev

输入localhost:3000

这里面的接口都是写在api.yml里的tags里

具体接口写在paths里

写在components里是请求的接口详细格式

这个接口格式是要在services下的examples.service.ts

服务层里

代码里导出ExamplesService类,里面有三个方法

all() 方法、byId(id: number) 方法、create(name: string) 方法

这个类定义了与业务逻辑相关的操作,特别是与示例数据(Example)相关的操作。它包含以下方法:

  • all():返回所有示例的列表。
  • byId(id: number):根据给定的 ID 返回单个示例。
  • create(name: string):创建一个新的示例,并将其添加到示例列表中。

Controller(控制器层)

控制器层负责处理 HTTP 请求,调用服务层的方法,并返回响应。它定义了以下方法:

  • all():处理获取所有示例的 HTTP 请求。
  • byId(req: Request, res: Response):处理获取特定 ID 示例的 HTTP 请求。
  • create(req: Request, res: Response):处理创建新示例的 HTTP 请求。

这种分层结构的优点,让业务逻辑HTTP 请求处理分离,使得代码更易于管理和维护。

定义路由

  • .post('/', controller.create):定义了一个 POST 路由,当客户端向服务器的根路径('/')发送 POST 请求时,将调用 controller.create 方法来处理请求。这通常用于创建新资源。

  • .get('/', controller.all):定义了一个 GET 路由,当客户端向服务器的根路径发送 GET 请求时,将调用 controller.all 方法来处理请求。这通常用于获取所有资源的列表。

  • .get('/:id', controller.byId):定义了一个 GET 路由,当客户端向服务器的 /:id 路径发送 GET 请求时(其中 :id 是一个动态参数,代表资源的标识符),将调用 controller.byId 方法来处理请求。这通常用于获取特定资源的详细信息。

相关推荐
天天打码1 小时前
Svelte-无虚拟DOM、极致性能的现代高性能Web开发框架!
前端·node.js·vue·svelte
吹牛不交税6 小时前
win10切换node.js版本
node.js
局外人LZ6 小时前
Forge:web端与 Node.js 安全开发中的加密与网络通信工具集,支持哈希、对称 / 非对称加密及 TLS 实现
前端·安全·node.js
JaredYe6 小时前
node-plantuml-2:革命性的纯Node.js PlantUML渲染器,告别Java依赖!
java·开发语言·node.js·uml·plantuml·jre
南方姑娘-qing7 小时前
nodejs脚本部署到服务器自动运行
node.js
嘿嘻哈呀1 天前
Node.js和包管理工具
node.js
winfredzhang1 天前
构建自动化 Node.js 项目管理工具:从文件夹监控到一键联动运行
chrome·python·sqlite·node.js·端口·运行js
winfredzhang1 天前
实战:从零构建一个支持屏幕录制与片段合并的视频管理系统 (Node.js + FFmpeg)
ffmpeg·node.js·音视频·录屏
shughui1 天前
2026最新版Node.js下载安装、版本选择 及 环境配置教程(详细图文附安装包)
node.js
小李子呢02111 天前
Node.js
开发语言·前端·学习·node.js