安装redis
npm install ioredis
? pnpm install --save nestjs-redis ioredis
? pnpm install --save @nestjsplus/redis
这个命令nest g res redis
创建redis需要用的
之后再appmoudlue加入
?providers: [
? ? AppService,
? ? {
? ? ? provide: 'REDIS_CLIENT',
? ? ? async useFactory() {
? ? ? ? const client = createClient({
? ? ? ? ? socket: {
? ? ? ? ? ? host: 'localhost',
? ? ? ? ? ? port: 6379,
? ? ? ? ? },
? ? ? ? });
? ? ? ? await client.connect();
? ? ? ? return client;
? ? ? },
? ? },
? ],
?
? 安装cache相关依赖
? pnpm install cache-manager
? ? pnpm install -d @types/cache-manager
? ? ? ? pnpm install cache-manager-redis-store --save
// redis.module.ts import { Module } from '@nestjs/common'; import { RedisService } from './redis.service'; import { RedisController } from './redis.controller'; @Module({ providers: [RedisService], // 注册 RedisService 作为提供者 exports: [RedisService], // 导出 RedisService controllers: [RedisController], }) export class RedisModule {}
// redis.service.ts import { Injectable } from '@nestjs/common'; import Redis from 'ioredis'; @Injectable() export class RedisService { private readonly redisClient: Redis; constructor() { this.redisClient = new Redis({ host: 'localhost', // Redis 服务器的主机名 port: 6379, // Redis 服务器的端口 }); } setValue(key: string, value: string){ return this.redisClient.set(key, value); } getValue(key: string) { return this.redisClient.get(key); } }
// redis.controller.ts import { Controller, Get, Param } from '@nestjs/common'; import { RedisService } from './redis.service'; @Controller('redis') export class RedisController { constructor(private readonly redisService: RedisService) {} @Get('set/:key/:value') async setKey(@Param('key') key: string, @Param('value') value: string){ return await this.redisService.setValue(key, value); } @Get('get/:key') async getValue(@Param('key') key: string) { return await this.redisService.getValue(key); } }
http://localhost:3001/redis/set/sss/1234
随意设置
sss是key? ?
value是1234
也可以get?
http://localhost:3001/redis/get/sss
会得到1234
6.下载一个resp?可任意看到你的key? value
否则返回ok
记得点赞哈 新手制作? 希望能帮到你
记得必须打开redis服务器?
cmd正方形的