2016-08-02 51 views
0

这是从服务器端的JSON响应加"\x00"我得到空值时,在Lua代码打印JSON关键

{ 
    "STATUS": [{ 
    "STATUS":"S", 
    "When":1470180059, 
    "Code":11, 
    "Msg":"Summary", 
    "Description":"nsgminer 0.9.2" 
    }],"SUMMARY": [{ 
    "Elapsed":2061, 
    "MHS av":0.00, 
    "Found Blocks":0, 
    "Getworks":76, 
    "Accepted":0, 
    "Rejected":0, 
    "Hardware Errors":0, 
    "Utility":0.00, 
    "Discarded":209, 
    "Stale":0, 
    "Get Failures":3, 
    "Local Work":293, 
    "Remote Failures":0, 
    "Network Blocks":14, 
    "Total MH":0.0000, 
    "Work Utility":0.00, 
    "Difficulty Accepted":0.00000000, 
    "Difficulty Rejected":0.00000000, 
    "Difficulty Stale":0.00000000, 
    "Best Share":0 
    }], 
    "id":1 
}\x00 

我想使用Lua代码的JSON:

local output = stdnse.output_table() 
local json_string = tostring(result:sub(1, -2)) 
local pos, value = json.parse(json_string) 
output["Description"] = value["STATUS"][0]["Description"] 
return output 

当我打印出来,我得到了空值

+0

试试'value [“STATUS”] [1] [“Description”]' –

回答

0

我解决了与隐蔽json串并将字符串转换成json表

local pos, value = json.parse(tostring(json_string)) 
output["Description"] = value["STATUS"][1]["Description"]