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

相关推荐
托尼沙滩裤7 小时前
【Node】最佳Node.js后端开发模板推荐
node.js
暴怒的代码7 小时前
解决Vue2官网Webpack源码泄露漏洞
前端·webpack·node.js
爱分享的程序员8 小时前
Node.js 实训专栏规划目录
前端·javascript·node.js
Q_Q5110082859 小时前
python的校园兼职系统
开发语言·spring boot·python·django·flask·node.js·php
水冗水孚9 小时前
express使用node-schedule实现定时任务,比如定时清理文件夹中的文件写入日志功能
javascript·node.js·express
雲墨款哥9 小时前
一次由“双重加密”引发的 Node.js 登录失败血案
node.js
chxii9 小时前
1.23Node.js 中操作 mongodb
mongodb·node.js
代码搬运媛12 小时前
【Node.js 的底层实现机制】从事件驱动到异步 I/O
node.js
CodingPeppa15 小时前
启动hardhat 项目,下载依赖的npm问题
前端·npm·node.js
泓博16 小时前
使用Node.js开发服务端接口
node.js