我能否(如果能,如何)在使用 jedis 运行 Lua 脚本时强制使用特定的字符串编码?

我怀疑 jedis 在调用我的 lua 脚本之前将我的字符串解码到了错误的字节集。我可以配置使用哪个字符串编码/解码算法或函数吗?

背景

我正在从 jedis 调用 lua 脚本,有点像这样:

evalResponse = jedis.eval(aLuaScriptString, 1, someKey, Double.toString(aDouble), new String(aByteArray, ‘UTF-8’), Integer.toString(anInteger));

其中 lua 脚本执行 zadd:

redis.call('zadd', KEYS[1], ARGV[1], ARGV[2])

当我从 redis 检索 byteArray 时,它包含与我发送的不同的字节集。

由于检索到的字节的字符串表示和我发送的字节是相同的,我强烈怀疑在 jedis/lua 调用路径的某个地方,我的字符串被解码为字节与我编码的方式不同。

点赞