from fastapi import FastAPI, HTTPException, Depends from aioredis import Redis from aioredis.client import Redis as RedisClient import aioredis app = FastAPI() REDIS_URL = "redis://redis:6379" REDIS_KEY = "stored_string" async def get_redis() -> RedisClient: return await aioredis.from_url(REDIS_URL, encoding="utf-8", decode_responses=True) @app.post("/string", status_code=201) async def create_string(text: str, redis: Redis = Depends(get_redis)): await redis.set(REDIS_KEY, text) return text @app.get("/string") async def get_string(redis: Redis = Depends(get_redis)): stored_string = await redis.get(REDIS_KEY) if stored_string is None: raise HTTPException(status_code=404, detail="No string found.") return stored_string