我有一个lua脚本,简化如下:
local item = {};
local id = redis.call("INCR", "counter");
item["id"] = id;
item["data"] = KEYS[1]
redis.call("SET", "item:" .. id, cjson.encode(item));
return cjson.encode(item);
KEYS[1]
是一个字符串化的json对象:
JSON.stringify({name : 'some name'});
因为我使用cjson.encode
将项目添加到集合中,所以会发生两次,因此结果是:
{"id":20,"data":"{\"name\":\"some name\"}"}
有没有更好的方法来处理它?</ p>