student-manage/apps/server/src/main.ts

31 lines
869 B
TypeScript
Raw Normal View History

2025-02-22 22:06:44 +08:00
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import { TrpcRouter } from './trpc/trpc.router';
import { WebSocketService } from './socket/websocket.service';
async function bootstrap() {
2025-02-23 19:37:11 +08:00
// 创建NestJS应用实例
2025-02-22 22:06:44 +08:00
const app = await NestFactory.create(AppModule);
// 启用 CORS 并允许所有来源
app.enableCors({
origin: '*',
});
2025-02-23 19:37:11 +08:00
// 获取WebSocket服务实例并初始化
2025-02-22 22:06:44 +08:00
const wsService = app.get(WebSocketService);
await wsService.initialize(app.getHttpServer());
2025-02-23 19:37:11 +08:00
// 获取tRPC路由实例并应用中间件
2025-02-22 22:06:44 +08:00
const trpc = app.get(TrpcRouter);
trpc.applyMiddleware(app);
2025-02-23 19:37:11 +08:00
// 设置服务器端口优先使用环境变量中的值默认3000
2025-02-22 22:06:44 +08:00
const port = process.env.SERVER_PORT || 3000;
2025-02-23 19:37:11 +08:00
// 启动应用,监听指定端口
2025-02-22 22:06:44 +08:00
await app.listen(port);
}
2025-02-23 19:37:11 +08:00
// 启动应用
2025-02-22 22:06:44 +08:00
bootstrap();