1.准备工作
安装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
2.配置 Redis 连接
// 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 {}
3.创建 Redis 服务
// 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); } }
4.使用 Redis 服务
// 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); } }
5.请求接口
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正方形的