gemercheung 2 年之前
父节点
当前提交
fa98aa8cc9

+ 7 - 0
src/interceptor/transform/transform.interceptor.spec.ts

@@ -0,0 +1,7 @@
+import { TransformInterceptor } from './transform.interceptor';
+
+describe('TransformInterceptor', () => {
+  it('should be defined', () => {
+    expect(new TransformInterceptor()).toBeDefined();
+  });
+});

+ 22 - 0
src/interceptor/transform/transform.interceptor.ts

@@ -0,0 +1,22 @@
+import {
+  CallHandler,
+  ExecutionContext,
+  Injectable,
+  NestInterceptor,
+} from '@nestjs/common';
+import { Observable } from 'rxjs';
+import { map } from 'rxjs/operators';
+@Injectable()
+export class TransformInterceptor implements NestInterceptor {
+  intercept(context: ExecutionContext, next: CallHandler): Observable<any> {
+    return next.handle().pipe(
+      map((data) => ({
+        code: 0,
+        data,
+        message: '成功',
+        success: true,
+        timestamp: Date.now()
+      })),
+    );
+  }
+}

+ 2 - 1
src/main.ts

@@ -7,6 +7,7 @@ import * as winston from 'winston';
 import 'winston-daily-rotate-file';
 import { join } from 'path';
 import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
+import { TransformInterceptor } from './interceptor/transform/transform.interceptor';
 
 async function bootstrap() {
   // const app = await NestFactory.create(AppModule);
@@ -39,7 +40,7 @@ async function bootstrap() {
   const redisIoAdapter = new RedisIoAdapter(app);
   await redisIoAdapter.connectToRedis();
   app.useWebSocketAdapter(redisIoAdapter);
-
+  app.useGlobalInterceptors(new TransformInterceptor());
   const config = new DocumentBuilder()
     .setTitle('带看socket API')
     .setDescription('带看api文档')

+ 1 - 1
src/room-manager/room-manager.service.ts

@@ -11,7 +11,7 @@ export class RoomManagerService {
   async findDanmakuList(id: string) {
     if (id) {
       const roomList = await this.redis.hgetall(`kankan:socket:roomMsg:${id}`);
-      console.log('roomList', roomList);
+      // console.log('roomList', roomList);
       const data: DanmakuDataType[] = [];
       Object.keys(roomList).forEach((key, index) => {
         const temp = {} as DanmakuDataType;