将Unicode保存为Redis但获取错误

将Unicode保存为Redis但获取错误,第1张

将Unicode保存为Redis但获取错误

如果您使用的是第三方库(例如)

django-redis
,则可能需要指定一个自定义的
ConnectionFactory

class DepreConnectionFactory(redis_cache.pool.ConnectionFactory):    def get_connection(self, params):        params['depre_responses'] = True        return super(DepreConnectionFactory, self).get_connection(self, params)

假设您使用的是redis-
py,最好传递

str
而不是传递
unipre
给Redis,否则Redis会自动将其编码
*set
命令,通常使用UTF-8编码。对于
*get
命令,Redis不了解值的形式类型,而只需要
str
直接返回值即可。

因此,正如Denis所说,将对象存储到Redis的方式至关重要。您需要转换值以

str
使Redis层对您透明。

另外,将默认编码设置为UTF-8,而不要使用

ascii



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/4904293.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存