import { createMiddleware } from 'hono/factory'; /** * 认证中间件 * 用于验证用户身份并获取用户信息 */ export const authMiddleware = createMiddleware(async (c, next) => { try { // 从认证模块获取用户信息 const user = c.get('user'); if (!user) { return c.json({ message: '未授权访问' }, 401); } // 设置用户OpenID到上下文 const userOpenid = user.openid; if (!userOpenid) { return c.json({ message: '用户未绑定微信小程序' }, 400); } c.set('userOpenid', userOpenid); await next(); } catch (error) { console.error('认证中间件错误:', error); return c.json({ message: '认证失败' }, 401); } });