您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

将Unicode保存为Redis但获取错误

将Unicode保存为Redis但获取错误

如果您使用的是第三方库(例如)django-redis,则可能需要指定一个自定义ConnectionFactory

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

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

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

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

其他 2022/1/1 18:15:01 有663人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶