Redis
 sql >> Base de données >  >> NoSQL >> Redis

Stocker un hachage MessagePacked dans Redis

MessagePack traite des octets bruts, qui sont marqués comme encodage 'ASCII-8BIT'. Cependant, vos données compressées reviennent de Redis marquées comme étant au codage UTF-8. Pour que MessagePack puisse être décompressé avec succès, vous devez le forcer à être à nouveau interprété comme des octets bruts.

Donc, changez cette ligne...

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

à quelque chose comme ça...

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