1 | import createError from "http-errors";
|
2 |
|
3 | import { Pet } from "../models";
|
4 |
|
5 | /**
|
6 | * 中间件
|
7 | * 根据 petId 加载 pet
|
8 | *
|
9 | * @param {import("koa").Context} ctx koa context
|
10 | * @param {import("koa").Next} next koa next
|
11 | */
|
12 | export default async (ctx, next) => {
|
13 | const { petId } = ctx.params;
|
14 | ctx.state.pet = await Pet.get(petId);
|
15 | if (!ctx.state.pet) {
|
16 | throw new createError.NotFound(`pet ${petId} not found`);
|
17 | }
|
18 | await next();
|
19 | };
|