Use json instead of pickle
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
from hashlib import sha256
|
from hashlib import sha256
|
||||||
import pickle
|
import json
|
||||||
|
|
||||||
|
|
||||||
DEFAULT_CACHE_NAME = "formcache"
|
DEFAULT_CACHE_NAME = "formcache"
|
||||||
@@ -15,7 +15,7 @@ class FormCache(object):
|
|||||||
return self.read(cache_key)
|
return self.read(cache_key)
|
||||||
|
|
||||||
def write(self, formdata, expiry_seconds=3600, key_prefix=DEFAULT_CACHE_NAME):
|
def write(self, formdata, expiry_seconds=3600, key_prefix=DEFAULT_CACHE_NAME):
|
||||||
value = pickle.dumps(formdata)
|
value = json.dumps(formdata)
|
||||||
hash_ = sha256().hexdigest()
|
hash_ = sha256().hexdigest()
|
||||||
self.redis.setex(
|
self.redis.setex(
|
||||||
name=self._key(key_prefix, hash_), value=value, time=expiry_seconds
|
name=self._key(key_prefix, hash_), value=value, time=expiry_seconds
|
||||||
@@ -24,7 +24,7 @@ class FormCache(object):
|
|||||||
|
|
||||||
def read(self, formdata_key, key_prefix=DEFAULT_CACHE_NAME):
|
def read(self, formdata_key, key_prefix=DEFAULT_CACHE_NAME):
|
||||||
data = self.redis.get(self._key(key_prefix, formdata_key))
|
data = self.redis.get(self._key(key_prefix, formdata_key))
|
||||||
return pickle.loads(data) if data is not None else {}
|
return json.loads(data) if data is not None else {}
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _key(prefix, hash_):
|
def _key(prefix, hash_):
|
||||||
|
Reference in New Issue
Block a user