sql >> Base de Datos >  >> NoSQL >> Redis

Almacenamiento de un hash MessagePacked en Redis

MessagePack trata con bytes sin procesar, que están marcados como codificación 'ASCII-8BIT'. Sin embargo, sus datos empaquetados regresan de Redis marcados como en codificación UTF-8. Para que MessagePack se descomprima con éxito, debe forzarlo para que se interprete como bytes sin formato.

Por lo tanto, cambie esta línea...

result = MessagePack.unpack(redis.get('my_key'))

a algo como esto...

redis_val = redis.get('my_key').force_encoding('ASCII-8BIT')
result = MessagePack.unpack(redis_val)