基于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 方法来处理请求。这通常用于获取特定资源的详细信息。

相关推荐
donecoding30 分钟前
3 条命令搞定闭环 Monorepo:Lerna 版本管理 + 拓扑构建 + 自定义分发
前端·前端框架·node.js
Flynt1 天前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
叫我Paul就好2 天前
尝试 Node 搭建后端-开发框架
node.js
风止何安啊4 天前
网课倍速痛点解决:一套前端代码实现自由控速播放器
前端·javascript·node.js
糖拌西瓜皮4 天前
Node.js核心模块实战:文件、路径、HTTP与流处理
javascript·node.js
糖拌西瓜皮4 天前
Node.js工程化实践:包管理、TypeScript配置与代码质量
typescript·node.js
糖拌西瓜皮4 天前
NestJS入门指南:Java开发者的Spring Boot体验
javascript·node.js
糖拌西瓜皮4 天前
Express框架快速上手:中间件、路由与错误处理
javascript·node.js
半个落月4 天前
从 Tokenization 到 Embedding:用 Node.js 搞懂大模型为什么先“分词”再“向量化”
人工智能·node.js
叁两5 天前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js