eval 'return(cjson.encode({"value1", "value2"}))' 0
"[\"value1\",\"value2\"]"
-- A Function that returns a table can be returned with...
eval 'return(cjson.encode(A_Function_That_Returns_A_Table()))' 0
package main
import (
"encoding/json"
"fmt"
)
// jsonString is the JSON string that you want to convert to a slice of strings.
const jsonString = `["value1", "value2"]`
func main() {
var stringSlice []string
// Unmarshal the JSON string into the stringSlice variable.
err := json.Unmarshal([]byte(jsonString), &stringSlice)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(stringSlice) // ["value1", "value2"]
}
2条答案
按热度按时间50pmv0ei1#
在Lua(redis-cli,eval)端,您可以使用
cjson.encode()
将表作为json字符串返回...如果表键/值数据类型适合json数据类型。
例如,作为json值的Lua函数失败。
如果它(json字符串)不是你想要的,那么关于返回的表的更多信息是必要的。
因为在已知的表结构上这是可能的...
iih3973s2#
可以使用encoding/json包将JSON字符串转换为字符串切片。