This is the redis session implementation for the project [naja atra](https://github.com/naja-atra/naja-atra)
Project description
Redis Sesion Implementation for Naja Atra
This is the redis session implementation for the project naja atra
Usage
import naja_atra
import naja_atra.server as server
import os
from naja_atra_redis_session.redis_session import RedisSessionFactory
def main(*args):
# host, port, db, username, password are all optional.
naja_atra.set_session_factory(RedisSessionFactory(host="10.0.2.16", port=6379, db=0, username="", password=""))
server.scan("tests/ctrls", r'.*controllers.*')
root = os.path.dirname(os.path.abspath(__file__))
server.start(
port=9090,
resources={"/public/*": f"{root}/tests/static"})
or you can re-use your redis client which might be used in other codes.
import naja_atra
import naja_atra.server as server
import os
import redis
from naja_atra_redis_session.redis_session import RedisSessionFactory
def main(*args):
# This redis client can be used in other business codes.
redis_client = redis.Redis(host="10.0.2.16", port=6379, db=0, username="", password="")
naja_atra.set_session_factory(RedisSessionFactory(redis_client=redis_client))
root = os.path.dirname(os.path.abspath(__file__))
server.start(
port=9090,
resources={"/public/*": f"{root}/tests/static"})
Write Your Own ObjectSerializer
Module pickle
is used to do the serialization and deserialization, if the defalut serialization logic could not satisfy you, you can write your own
naja_atra_redis_session.redis_session import ObjectSerializer
class MyObjectSerializer(ObjectSerializer):
def object_to_bytes(self, obj: Any) -> bytes:
bys = ...
return bys
def bytes_to_objects(self, value: bytes) -> Any:
obj = ...
return obj
# Set it when initializing a SessionFactory.
naja_atra.set_session_factory(RedisSessionFactory(host="10.0.2.16", port=6379, db=0, username="", password="", object_serializer=MyObjectSerializer()))
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file naja-atra-redis-session-1.0.1.tar.gz
.
File metadata
- Download URL: naja-atra-redis-session-1.0.1.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a523b6bee3af57ed9a87ac16c2b83090d132929d1de5314dff314feb32b25514 |
|
MD5 | 5a36016b6ab159a7d7bfca995a124660 |
|
BLAKE2b-256 | 1712a9203eda421bb11963a65fb22b1e973b77baf22c816fbadbe830469e25fc |
File details
Details for the file naja_atra_redis_session-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: naja_atra_redis_session-1.0.1-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 311de0ea4d1af952a47e9b85ad3bcd413f3245c787bee6ad939b728bb276268a |
|
MD5 | 702a538bd517b4af588c151b44739d7d |
|
BLAKE2b-256 | 3e4a78f55251200f539eb43ed6450b6dfae866b84075b7fc09c56f9dec5155ae |