难以将Lua连接到redis服务器

时间:2016-09-08 11:11:30

标签: sockets lua redis

我遇到连接redis服务器的问题。我已经使用luarocks安装了 redis-lua(2.0.4-1) luasocket(3.0rc1-2)。我刚刚运行luarocks install redis-lua。当我致电redis.connect时,我收到错误:

Lua 5.1.5  Copyright (C) 1994-2012 Lua.org, PUC-Rio
> local redis = require 'redis'
> local client = redis.connect('127.0.0.1', 6379)
stdin:1: attempt to index global 'redis' (a nil value)
stack traceback:
        stdin:1: in main chunk
        [C]: ?
>

我不知道为什么......

1 个答案:

答案 0 :(得分:0)

当您以交互模式或通过脚本执行时,会有所不同。在交互式lua shell中,您的local变量/运行时限定为特定的执行级别。这就是为什么

local redis = require 'redis'

仅在该语句行中为您提供redis变量。您必须在同一语句行中连接到服务器:

> local redis = require 'redis'; local client = redis.connect('127.0.0.1', 6379); -- so other statements

或者,在交互模式下,不要使用local范围。