EVAL_RO
执行只读服务器端Lua脚本。
语法
EVAL RO script numkeys [key [key ...]] [arg [arg ...]]
引入版本:7.0.0
复杂度摘要:—
运行只读 Lua 脚本。与 EVAL 不同,此命令无法运行修改数据的命令。
有关何时使用此命令与 EVAL 的更多信息,请参阅 只读脚本。
有关 EVAL 脚本的更多信息,请参阅 Eval 脚本简介。
必需参数
script
要评估的Lua脚本。它不得修改数据。
numkeys
后面的键名称的数量。键后面的参数作为常规参数传递。
可选参数
key [key ...]
脚本访问的键名,通过 Lua KEYS 全局变量提供给它。其中必须正好有 numkeys 个。
arg [arg ...]
通过 Lua ARGV 变量向脚本提供其他参数。
示例
> SET mykey "Hello"
OK
> EVAL_RO "return redis.call('GET', KEYS[1])" 1 mykey
"Hello"
> EVAL_RO "return redis.call('DEL', KEYS[1])" 1 mykey
(error) ERR Error running script (call to b0d697da25b13e49157b2c214a4033546aba2104): @user_script:1: @user_script: 1: Write commands are not allowed from read-only scripts.
Redis Software 与 Redis Cloud 兼容性
| Redis 软件 |
Redis Cloud |
说明 |
|---|---|---|
| ✅ 标准 |
✅ 标准 |
返回值
RESP2
返回值取决于执行的脚本。
RESP3
返回值取决于执行的脚本。
资料来源:Redis 官方 EVAL_RO 文档;中文内容参考 Redis 文档许可。