更新 server.js:添加 upload 路由
This commit is contained in:
parent
ecbb8f57d8
commit
ff8e79df92
@ -1,9 +1,3 @@
|
||||
/**
|
||||
* persona-brain-db · API服务入口
|
||||
* 端口:3001(与后端3000不冲突)
|
||||
* 启动:node server.js
|
||||
*/
|
||||
|
||||
const express = require('express');
|
||||
const path = require('path');
|
||||
const sqlite3 = require('better-sqlite3');
|
||||
@ -14,6 +8,7 @@ const memoryRoutes = require('./routes/memory');
|
||||
const profilesRoutes = require('./routes/profiles');
|
||||
const agentsRoutes = require('./routes/agents');
|
||||
const documentsRoutes = require('./routes/documents');
|
||||
const uploadRoutes = require('./routes/upload');
|
||||
const authMiddleware = require('./middleware/auth');
|
||||
|
||||
const DB_PATH = path.join(__dirname, '..', 'brain.db');
|
||||
@ -22,52 +17,33 @@ const PORT = process.env.BRAIN_API_PORT || 3001;
|
||||
const app = express();
|
||||
app.use(express.json());
|
||||
|
||||
// 注入数据库连接
|
||||
let db;
|
||||
try {
|
||||
db = sqlite3(DB_PATH);
|
||||
db.pragma('journal_mode = WAL');
|
||||
db.pragma('foreign_keys = ON');
|
||||
} catch (err) {
|
||||
console.error(`❌ 无法打开数据库: ${DB_PATH}`);
|
||||
console.error(' 请先执行建表和导入种子数据');
|
||||
console.error('DB error');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
app.use((req, _res, next) => {
|
||||
req.db = db;
|
||||
next();
|
||||
});
|
||||
app.use((req, _res, next) => { req.db = db; next(); });
|
||||
|
||||
// 静态文件(前端页面)
|
||||
app.use(express.static(path.join(__dirname, '..', 'frontend')));
|
||||
|
||||
// 健康检查(无鉴权)
|
||||
app.get('/brain/health', (_req, res) => {
|
||||
res.json({
|
||||
status: 'ok',
|
||||
service: 'persona-brain-db',
|
||||
timestamp: new Date().toISOString()
|
||||
});
|
||||
res.json({ status: 'ok', service: 'persona-brain-db', timestamp: new Date().toISOString() });
|
||||
});
|
||||
|
||||
// 需要鉴权的路由
|
||||
app.use('/brain/identity', authMiddleware, identityRoutes);
|
||||
app.use('/brain/cognition', authMiddleware, cognitionRoutes);
|
||||
app.use('/brain/memory', authMiddleware, memoryRoutes);
|
||||
app.use('/brain/profiles', authMiddleware, profilesRoutes);
|
||||
app.use('/brain/agents', authMiddleware, agentsRoutes);
|
||||
// documents: 语言层数据库核心,人格体读写,人类只读
|
||||
app.use('/brain/documents', authMiddleware, documentsRoutes);
|
||||
app.use('/brain/documents', documentsRoutes);
|
||||
app.use('/brain/documents', uploadRoutes);
|
||||
|
||||
// 全局错误处理
|
||||
app.use((err, _req, res, _next) => {
|
||||
console.error('Server error:', err.message);
|
||||
res.status(500).json({ error: true, message: 'Internal server error' });
|
||||
});
|
||||
|
||||
app.listen(PORT, () => {
|
||||
console.log(`🧠 persona-brain-db API 启动成功,端口:${PORT}`);
|
||||
res.status(500).json({ error: true, message: 'Internal error' });
|
||||
});
|
||||
|
||||
app.listen(PORT, () => console.log('brain-db API :' + PORT));
|
||||
module.exports = app;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user