// mock-server 入口:装配全部业务路由,启动一个独立 Express 进程模拟真实后端。 // 启动方式:npm run mock(默认端口 8888,可通过环境变量 MOCK_PORT 覆盖)。 import express from 'express' import cors from 'cors' import cookieParser from 'cookie-parser' import authRouter from './routes/auth.js' import organizationRouter from './routes/organization.js' import userRouter from './routes/user.js' import roleRouter from './routes/role.js' import permissionRouter from './routes/permission.js' import baseConfigRouter from './routes/baseConfig.js' import customerRouter from './routes/customer.js' import walletRouter from './routes/wallet.js' import creditRouter from './routes/credit.js' import merchantRouter from './routes/merchant.js' import invoiceRouter from './routes/invoice.js' import paymentRouter from './routes/payment.js' import orderRouter from './routes/order.js' const app = express() // 允许携带 Cookie 跨域(前端 axios withCredentials: true 依赖此配置) app.use(cors({ origin: true, credentials: true })) app.use(cookieParser()) app.use(express.json({ limit: '10mb' })) app.use('/api/auth', authRouter) app.use('/api/organization', organizationRouter) app.use('/api', userRouter) app.use('/api', roleRouter) app.use('/api/permission', permissionRouter) app.use('/api', baseConfigRouter) app.use('/api', customerRouter) app.use('/api', walletRouter) app.use('/api/credit-apply', creditRouter) app.use('/api/merchant', merchantRouter) app.use('/api', invoiceRouter) app.use('/api', paymentRouter) app.use('/api', orderRouter) app.use((req, res) => { res.status(404).json({ code: 404, message: `接口不存在: ${req.method} ${req.originalUrl}`, data: null }) }) // eslint-disable-next-line no-unused-vars app.use((err, req, res, next) => { console.error('[mock-server] 未捕获异常:', err) res.status(500).json({ code: 500, message: err?.message || '服务器内部错误', data: null }) }) const PORT = process.env.MOCK_PORT || 8888 app.listen(PORT, () => { console.log(`[mock-server] 已启动,监听端口 ${PORT}`) console.log('[mock-server] 测试账号: admin / Admin@123') })