const fs = require('fs'); const content = fs.readFileSync('routes/auth.js', 'utf8'); // 我们需要从主文件中获取db、verifyPassword、generateToken、authenticate等依赖 // 首先读取主文件的开头部分 const mainContent = fs.readFileSync('final-backend.js', 'utf8'); const mainLines = mainContent.split('\n'); // 提取依赖声明 let dbImport = ''; let authUtilsImport = ''; let authMiddlewareImport = ''; for (let i = 0; i < 15; i++) { if (mainLines[i].includes('const db = require')) { dbImport = mainLines[i]; } if (mainLines[i].includes('const { hashPassword, verifyPassword, generateToken, verifyToken } = require')) { authUtilsImport = mainLines[i]; } if (mainLines[i].includes('const { authenticate, optionalAuth, requireRole, requireAdmin } = require')) { authMiddlewareImport = mainLines[i]; } } console.log('找到的依赖:'); console.log(`1. ${dbImport}`); console.log(`2. ${authUtilsImport}`); console.log(`3. ${authMiddlewareImport}`); // 修改auth路由文件,添加依赖 const fixedContent = `const express = require('express'); const router = express.Router(); // 导入依赖 ${dbImport} ${authUtilsImport} ${authMiddlewareImport} ${content.split('\n').slice(2).join('\n')}`; // 写入修复后的文件 fs.writeFileSync('routes/auth.js', fixedContent); console.log('\n✅ 已修复auth路由文件的依赖'); // 验证修复 const fixedFileContent = fs.readFileSync('routes/auth.js', 'utf8'); console.log(`修复后文件大小:${fixedFileContent.length} 字符`); // 检查是否包含必要的依赖 if (fixedFileContent.includes('const db = require') && fixedFileContent.includes('verifyPassword') && fixedFileContent.includes('generateToken') && fixedFileContent.includes('authenticate')) { console.log('✅ 依赖导入验证成功'); } else { console.log('❌ 依赖导入验证失败'); process.exit(1); }