代理后端出版

This commit is contained in:
2025-09-05 16:49:23 +08:00
parent e704c8abca
commit 141d1313d6
27 changed files with 6395 additions and 49 deletions

View File

@@ -8,13 +8,15 @@ const path = require('path');
const mysql = require('mysql2/promise');
const rateLimit = require('express-rate-limit');
const helmet = require('helmet');
const swaggerUi = require('swagger-ui-express');
const swaggerSpecs = require('./swagger');
const { initDB, getDB, dbConfig } = require('./database');
const { logger } = require('./config/logger');
const { errorHandler, notFound } = require('./middleware/errorHandler');
const fs = require('fs');
const app = express();
const PORT = process.env.AGENT_PORT || 3001;
const PORT = process.env.AGENT_PORT || 3002;
// 确保日志目录存在
const logDir = path.join(__dirname, 'logs');
@@ -36,6 +38,7 @@ app.use(cors({
origin: [
'http://localhost:5173',
'http://localhost:5176',
'http://localhost:5175',
'http://localhost:5174',
'http://localhost:3002',
'https://agent.zrbjr.com',
@@ -116,18 +119,29 @@ app.use('/uploads', express.static(path.join(__dirname, 'uploads'), {
// API路由 - 代理专用路由
app.use('/api/auth', require('./routes/auth'));
// 添加代理认证路由别名,兼容前端请求
app.use('/api/agents/auth', require('./routes/auth'));
app.use('/api/agent', require('./routes/agent'));
app.use('/api/users', require('./routes/users'));
app.use('/api/transfers', require('./routes/transfers'));
app.use('/api/commissions', require('./routes/commissions'));
app.use('/api/upload', require('./routes/upload'));
app.use('/api/captcha', require('./routes/captcha')); // 验证码路由
// Swagger API 文档
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerSpecs, {
explorer: true,
customCss: '.swagger-ui .topbar { display: none }',
customSiteTitle: '炬融圈代理后台API文档'
}));
// 代理后台首页路由
app.get('/', (req, res) => {
res.json({
message: '炬融圈代理后台API服务',
version: '1.0.0',
status: 'running'
status: 'running',
docs: '/api-docs'
});
});
@@ -147,6 +161,9 @@ module.exports = {
app, getDB
};
// 初始化全局验证码存储
global.captchaStore = new Map();
// 启动服务器
app.listen(PORT, async () => {
try {