#!/usr/bin/env python3 """ WeCom Middleware 测试服务器 用于快速验证项目结构和访问地址 """ from http.server import HTTPServer, BaseHTTPRequestHandler import json import time import socket class TestHandler(BaseHTTPRequestHandler): def do_GET(self): if self.path == '/': self.send_response(200) self.send_header('Content-type', 'text/html') self.end_headers() html = """ WeCom Middleware - 测试服务器

🚀 WeCom Middleware 测试服务器

企业微信与OpenClaw双向通信中间件

📋 项目状态

✅ 项目架构已创建完成
⚠️ 后端服务需要编译启动
⚠️ 前端服务需要构建启动

🌐 访问地址

🔧 快速启动

# 进入项目目录
cd /root/.openclaw/workspace/wecom-middleware

# 一键启动(推荐)
./start.sh

# 或者手动启动
docker-compose up -d

📁 项目结构

wecom-middleware/
├── backend/          # Spring Boot后端
├── frontend/         # Vue前端  
├── docker/           # Docker配置
├── scripts/          # 数据库脚本
├── docker-compose.yml # Docker Compose配置
├── build.sh          # 构建脚本
├── start.sh          # 启动脚本
└── README.md         # 项目文档

📞 技术支持

如果遇到问题,请检查:

  1. Docker和Docker Compose是否安装
  2. 端口是否被占用(8080, 3000, 3306, 6379, 8081)
  3. 查看日志:docker-compose logs -f
""" self.wfile.write(html.encode()) elif self.path == '/api/system/status': self.send_response(200) self.send_header('Content-type', 'application/json') self.end_headers() status = { "success": True, "message": "WeCom Middleware 测试服务器运行中", "timestamp": int(time.time()), "services": { "backend": { "status": "待启动", "port": 8080, "url": "http://localhost:8080" }, "frontend": { "status": "待启动", "port": 3000, "url": "http://localhost:3000" }, "mysql": { "status": "待启动", "port": 3306 }, "redis": { "status": "待启动", "port": 6379 } }, "project": { "name": "WeCom Middleware", "version": "1.0.0", "description": "企业微信与OpenClaw双向通信中间件" } } self.wfile.write(json.dumps(status, indent=2).encode()) elif self.path == '/api/system/health': self.send_response(200) self.send_header('Content-type', 'application/json') self.end_headers() health = { "status": "UP", "timestamp": int(time.time()), "components": { "testServer": "UP", "backend": "DOWN", "frontend": "DOWN", "database": "DOWN", "cache": "DOWN" }, "message": "测试服务器运行正常,其他服务需要启动Docker容器" } self.wfile.write(json.dumps(health, indent=2).encode()) else: self.send_response(404) self.send_header('Content-type', 'application/json') self.end_headers() error = { "error": "Not Found", "path": self.path, "message": "请访问 / 或 /api/system/status" } self.wfile.write(json.dumps(error, indent=2).encode()) def do_POST(self): self.send_response(200) self.send_header('Content-type', 'application/json') self.end_headers() response = { "success": True, "message": "POST请求已接收", "timestamp": int(time.time()), "method": "POST" } self.wfile.write(json.dumps(response, indent=2).encode()) def log_message(self, format, *args): # 简化日志输出 print(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] {format % args}") def get_local_ip(): """获取本地IP地址""" try: s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(("8.8.8.8", 80)) ip = s.getsockname()[0] s.close() return ip except: return "127.0.0.1" def main(): port = 9090 local_ip = get_local_ip() print("=" * 60) print("🚀 WeCom Middleware 测试服务器启动中...") print("=" * 60) print(f"📡 本地访问: http://localhost:{port}") print(f"🌐 网络访问: http://{local_ip}:{port}") print("=" * 60) print("📋 项目状态:") print(" ✅ 完整的项目架构已创建") print(" ✅ Docker Compose配置完成") print(" ✅ 数据库脚本已准备") print(" ✅ 前后端代码框架完成") print("=" * 60) print("🔧 启动完整服务:") print(" 1. cd /root/.openclaw/workspace/wecom-middleware") print(" 2. ./start.sh # 一键启动") print(" 或") print(" 2. docker-compose up -d") print("=" * 60) print("🌐 完整服务访问地址:") print(" - 前端管理界面: http://localhost:3000") print(" - 后端API服务: http://localhost:8080") print(" - 数据库管理: http://localhost:8081") print("=" * 60) try: server = HTTPServer(('0.0.0.0', port), TestHandler) print(f"✅ 测试服务器已启动,按 Ctrl+C 停止") print("=" * 60) server.serve_forever() except KeyboardInterrupt: print("\n🛑 测试服务器已停止") except Exception as e: print(f"❌ 启动失败: {e}") if __name__ == '__main__': main()