当前位置: 首页> 健康> 养生 > 合肥公司注册代办费用_新会网站建设_广东疫情最新资讯_制作网页多少钱

合肥公司注册代办费用_新会网站建设_广东疫情最新资讯_制作网页多少钱

时间:2025/7/9 22:40:14来源:https://blog.csdn.net/qq_35374791/article/details/142206550 浏览次数:0次
合肥公司注册代办费用_新会网站建设_广东疫情最新资讯_制作网页多少钱

1. 安装依赖

npm i @tirke/node-cache-manager-ioredis cache-manager

2. 创建redis 模块和服务

1. 生成并编辑module

生成module
nest g mo redis
编辑模块
// redis.module.ts
import { Module } from '@nestjs/common';
// import { redisClient } from './redis.client';
import { ioRedisStore, RedisCache } from '@tirke/node-cache-manager-ioredis';
import { caching } from 'cache-manager';
@Module({providers: [{provide: 'REDIS_CLIENT',useValue: async () => {const redisCache: RedisCache = await caching(ioRedisStore, {host: '192.168.50.3', // default valueport: 6379, // default valuepassword: '',ttl: 600,});// listen for redis connection error eventconst cache = redisCache.store;cache.client.on('error', (error: unknown) => {console.error('Redis error:', error);});},},],exports: ['REDIS_CLIENT'],
})
export class RedisModule {}

2.生成并编辑redis service

生成service
nest g s redis
编辑service
// redis.service.ts
import { Injectable } from '@nestjs/common';
import { Inject } from '@nestjs/common';
import { Redis } from 'ioredis';@Injectable()
export class RedisService {constructor(@Inject('REDIS_CLIENT') private readonly client: Redis) {}async set(key: string, value: any): Promise<void> {await this.client.set(key, value);}async get(key: string): Promise<string | null> {return this.client.get(key);}async del(key: string): Promise<number> {return this.client.del(key);}
}

note: 记得删除app.mudule.ts 中的引用

import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { MongooseModule } from '@nestjs/mongoose';import { ConfigModule } from '@nestjs/config';
// import { RedisModule } from './redis/redis.module';刪除@Module({imports: [ConfigModule.forRoot({isGlobal: true,envFilePath: ['.env.development.local', '.env.development', '.env'],//If a variable is found in multiple files, the first one takes precedence.}),MongooseModule.forRoot(process.env.MONGO_URI),UserModule,AuthModule,MemberModule,//  RedisModule,刪除],controllers: [AppController],providers: [AppService,RedisService],
})
export class AppModule {}

3. 调用服务

1.使用的模块导入RedisService和模块RedisModule
...
import { RedisService } from 'src/redis/redis.service';
import { RedisModule } from 'src/redis/redis.module';@Module({imports: [RedisModule,....],providers: [...RedisService],exports: [AuthService],controllers: [AuthController],
})
export class AuthModule {}
2. 调用
import { Injectable } from '@nestjs/common';
import { RedisService } from 'src/redis/redis.service';
@Injectable()
export class AuthService {constructor(private readonly redisService: RedisService,) {}async login(member: MemberLoginDto) {...await this.redisService.set(`token:${accessToken}`, memberInfo);}
}
关键字:合肥公司注册代办费用_新会网站建设_广东疫情最新资讯_制作网页多少钱

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: