教程 fastify tutorial

核心 API 介绍

Fastify 提供一套精简且功能强大的核心 API,开发者可以快速构建结构清晰、性能优越的 Web 服务。

路由注册

使用 fastify.get/post/put/delete 等方法注册路由:

js
fastify.get('/hello', async (request, reply) => {
  return { msg: 'Hello' };
});

支持异步函数或回调形式。默认返回值会被序列化为 JSON。

request 对象

封装了客户端请求的相关信息:

  • request.query:查询参数
  • request.params:路径参数
  • request.body:请求体(需启用 body 解析)
  • request.headers:请求头

示例:

js
fastify.post('/login', async (request) => {
  const { username, password } = request.body;
  // 业务处理...
});

reply 对象

用于构建响应内容:

  • reply.send(data):发送响应
  • reply.code(statusCode):设置状态码
  • reply.header(name, value):设置响应头

示例:

js
fastify.get('/custom', (request, reply) => {
  reply.code(201).header('x-custom', 'yes').send({ ok: true });
});

日志记录

Fastify 默认集成了 Pino 日志系统:

js
const fastify = require('fastify')({ logger: true });

fastify.log.info('服务正在启动...');

每个 request 也自带 request.log 和 reply.log。