解析嵌套对象时lua-cjson解码错误

时间:2018-08-02 16:47:36

标签: lua

  

s = cjson.decode(s)

我想像这样对语句进行解码,但出现Expected value but found invalid token at character 27错误。我尝试了如下另一条语句:

  

{“状态代码”:503,“正文”:“ {”代码“:1,”消息“:”服务不可用“}”}

     

{“状态代码”:503,“正文”:{“代码”:1,“消息”:“服务不可用”}}

但是有相同的错误。看起来cjson不支持嵌套嵌套解码?还有其他解决方案吗?谢谢。

1 个答案:

答案 0 :(得分:0)

像这样的JSON数据很容易转换为Lua代码:

s=[[
{"status_code":503,"body":{"code": 1, "message": "Service unavailable"}}
]]

s=s:gsub('(".-"):','[%1]=')
t=load("return "..s)()
for k,v in pairs(t) do print(k,v) end
for k,v in pairs(t.body) do print(k,v) end