将参数传递给 Redis Lua 脚本

Bra*_*rad 4 lua arguments redis

我正在尝试使用以下语法将参数传递给我的 Redis Lua 脚本:

redis-cli -h 127.0.0.1 -p 6379 -a my-super-secret-auth-key --eval /tmp/test.lua 0 60

但是在我的脚本中,当我这样做时: print (ARGV[1]);

我得到(零)回报。我究竟做错了什么?如何正确地将参数传递给我的脚本?

Pau*_*nko 7

即使您不传递任何 KEYS(假设您想要并被传递为),您也需要使用逗号 ( ,) 来分隔KEYSARGV参数:060ARGV

redis-cli -h 127.0.0.1 -p 6379 -a my-super-secret-auth-key --eval /tmp/test.lua , 0 60
Run Code Online (Sandbox Code Playgroud)

在您的情况下,这些参数被视为 KEYS,而不是 ARGV 参数。请参阅Redis 文档中的运行 Lua 脚本