File size: 1,670 Bytes
0554d4d
 
c608dbf
0554d4d
 
c608dbf
0554d4d
 
 
 
c608dbf
0554d4d
 
 
 
 
 
4554658
c608dbf
0554d4d
 
4554658
0554d4d
4554658
0554d4d
 
 
4554658
0554d4d
 
 
 
 
 
c608dbf
0554d4d
4554658
0554d4d
 
 
 
 
 
 
c608dbf
0554d4d
 
 
 
 
 
c608dbf
0554d4d
4554658
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// 启动服务器
const PORT = process.env.PORT || 7860;

// 简化的启动流程
console.log('🚀 开始启动服务器...');

// 先启动服务器,再异步初始化
app.listen(PORT, '0.0.0.0', () => {
  logger.success(`🚀 服务器已在 0.0.0.0:${PORT} 启动成功`);
  logger.info(`📡 访问地址: http://0.0.0.0:${PORT}`);
  
  // 显示代理配置
  if (PROXY_URL) {
    const safeProxyUrl = PROXY_URL.replace(/:([^:@]+)@/, ':****@');
    logger.info(`🌐 代理配置: ${safeProxyUrl}`);
  } else {
    logger.info(`🌐 代理配置: 直连模式`);
  }
  
  // 异步初始化,避免阻塞启动
  setTimeout(async () => {
    try {
      logger.info('🔧 开始系统初始化...');
      
      // 初始化系统
      const initResult = await initialize();
      INITIALIZED_SUCCESSFULLY = initResult !== false;
      
      // 验证代理(如果配置了)
      if (PROXY_URL) {
        try {
          await validateProxy();
        } catch (error) {
          logger.warning(`代理验证失败: ${error.message}`);
        }
      }
      
      // 显示最终状态
      if (INITIALIZED_SUCCESSFULLY) {
        logger.success(`✅ 系统初始化完成`);
        logger.success(`🍪 可用Cookie数量: ${cookieManager.getValidCount()}`);
      } else {
        logger.warning(`❌ 系统初始化失败`);
        logger.warning(`⚠️  请检查NOTION_COOKIE配置`);
      }
      
      logger.success(`🎯 所有服务已就绪!`);
      
    } catch (error) {
      logger.error(`❌ 初始化过程出错: ${error.message}`);
      INITIALIZED_SUCCESSFULLY = false;
    }
  }, 1000); // 1秒后开始初始化
});