A redis-based session backend for Fastapi apps
Project description
fastapi-redis-session
A redis-based session backend for Fastapi apps
Install
pip install -U fastapi-redis-session
Use
from typing import Any
from fastapi import Depends, FastAPI, Request, Response
from fastapi_redis_session import getSession, setSession
from fastapi_redis_session.deps import getSessionStorage
from fastapi_redis_session.session import SessionStorage
app = FastAPI(title=__name__)
@app.post("/setSession")
async def _setSession(
request: Request, response: Response, sessionStorage: SessionStorage = Depends(getSessionStorage)
):
sessionData = await request.json()
setSession(response, sessionData, sessionStorage)
@app.get("/getSession")
async def _setSession(session: Any = Depends(getSession)):
return session
@application.post("/deleteSession")
async def _deleteSession(
sessionId: str = Depends(getSessionId), sessionStorage: SessionStorage = Depends(getSessionStorage)
):
deleteSession(sessionId, sessionStorage)
return None
Config
Deafult Config
- url of Redis: redis://localhost:6379/0
- name of sessionId: ssid
- generator function of sessionId:
lambda :uuid.uuid4().hex
- expire time of session in redis: 6 hours
Custom Config
from fastapi_redis_session.config import basicConfig
basicConfig(
redisURL="redis://localhost:6379/1",
sessionIdName="sessionId",
sessionIdGenerator=lambda: str(random.randint(1000, 9999)),
expireTime=timedelta(days=1),
)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for fastapi-redis-session-0.1.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 80013602ff23df0864d5ca66152444cc50ee01594a51b8bbfe899246a9b029cd |
|
MD5 | 5b3cca655a71e921fbd7602e4def94dc |
|
BLAKE2b-256 | be085c51ed2d5f5d0926280b109f3038e6c38446373ca660a792675a17063943 |
Close
Hashes for fastapi_redis_session-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed4e5ca7cac5bcee3b4a4212bd4cea1a7439517d41ce3218847499ee106854f8 |
|
MD5 | 95c977d2d35219239c89e28376b7e849 |
|
BLAKE2b-256 | c666847700ef075368dbefd29af489a405e41d99b928f0e8ba79101fbb60996f |