UNPKG

@36node/template-service

Version:

A service boilerplate with openapi,rest and mongodb.

21 lines (17 loc) 475 B
import { Role } from "../constants"; /** * 中间件 计算动态角色 * * @param {import("koa").Context} ctx koa context * @param {import("koa").Next} next koa next */ export default async (ctx, next) => { const { jwt, pet = {} } = ctx.state; const { owner } = pet; jwt.roles = jwt.roles || []; // 注意这里 owner 是 mongo 的 objectId if (owner == jwt.user /*eslint-disable-line*/) { jwt.roles.push(Role.PET_STORE_OWNER); } return next(); };