西西ys 2022-07-31 20:50 采纳率: 0%
浏览 517
已结题

关于#lua#的问题:springboot jedis解锁提示Redis Lua脚本报错 redis() command arguments must be strings or integers

springboot jedis解锁提示Redis Lua脚本报错 redis() command arguments must be strings or integers
String script = "if redis.call('get', KEYS[1]) == ARGV[1] then return redis.call('del', KEYS[1]) else return 0 end";

Object result = jedis.eval(script, Collections.singletonList(lockKey), Collections.singletonList(requestId));

直接用jedis执行lua脚本就提示 redis() command arguments must be strings or integers,

  • 写回答

1条回答 默认 最新

  • 柏油 2022-08-05 10:30
    关注
    获得5.00元问题酬金

    1、错误是 redis 服务端解析 lua 参数时抛出
    2、检查参数 requestId 是否为 string or integer,确保是这两种类型
    3、看看 jedis 版本 和 redis server 版本

    ps: 我自己试过,jedis-4.2.0 和 redis-6.0.9 是 ok 的

    评论

报告相同问题?

问题事件

  • 系统已结题 8月8日
  • 创建了问题 7月31日

悬赏问题

  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)