Lua从Node.js获取参数

时间:2018-06-21 04:46:53

标签: node.js lua redis

我想问问如何将Nodejs的数据发送到Lua脚本,以便我可以使用该参数消除redis数据结果和更快的搜索过程。这是我的代码

Lua脚本

-- parameter data should be taken here
local ks=redis.call('ZRANGE', 'mykey', '0', '-1')
return (ks)

NodeJS

const Redis = require("redis");
const config = require("../resource/config");
const fs = require("fs");

const redis = Redis.createClient({
  port: config.redis.port,
  host: config.redis.host,
  db: config.redis.index
});

let script = fs.readFileSync("./file.lua");
redis.eval(script, 0, [], "some how sending parameter here ", (err, resp)       => {
   console.log(resp);
   redis.quit();
});

谢谢您。

1 个答案:

答案 0 :(得分:1)

经过研究和尝试,我发现了

redis.eval(script, 0, ["parameter1"],["parameter2"], (err, resp)       => {
   console.log(resp);
   redis.quit();
});

在lua脚本中获取参数

    return ARGV[1] --parameter1
    return ARGV[2] --parameter2