2016-01-08 23:39:50 +01:00
|
|
|
# CJSON Module
|
2016-01-06 01:51:48 +01:00
|
|
|
|
|
|
|
The JSON support module. Allows encoding and decoding to/from JSON.
|
|
|
|
|
|
|
|
Please note that nested tables can require a lot of memory to encode. To catch out-of-memory errors, use `pcall()`.
|
|
|
|
|
|
|
|
## cjson.encode()
|
|
|
|
|
|
|
|
Encode a Lua table to a JSON string.
|
|
|
|
|
|
|
|
####Syntax
|
|
|
|
`cjson.encode(table)`
|
|
|
|
|
|
|
|
####Parameters
|
2016-01-08 23:39:50 +01:00
|
|
|
`table` data to encode
|
2016-01-06 01:51:48 +01:00
|
|
|
|
|
|
|
While it also is possible to encode plain strings and numbers rather than a table, it is not particularly useful to do so.
|
|
|
|
|
|
|
|
####Returns
|
2016-01-08 23:39:50 +01:00
|
|
|
JSON string
|
2016-01-06 01:51:48 +01:00
|
|
|
|
|
|
|
####Example
|
|
|
|
```lua
|
|
|
|
ok, json = pcall(cjson.encode, {key="value"})
|
|
|
|
if ok then
|
|
|
|
print(json)
|
|
|
|
else
|
|
|
|
print("failed to encode!")
|
|
|
|
end
|
|
|
|
```
|
2016-01-08 23:39:50 +01:00
|
|
|
|
2016-01-06 01:51:48 +01:00
|
|
|
## cjson.decode()
|
|
|
|
|
|
|
|
Decode a JSON string to a Lua table.
|
|
|
|
|
|
|
|
####Syntax
|
|
|
|
`cjson.decode(str)`
|
|
|
|
|
|
|
|
####Parameters
|
2016-01-08 23:39:50 +01:00
|
|
|
`str` JSON string to decode
|
2016-01-06 01:51:48 +01:00
|
|
|
|
|
|
|
####Returns
|
2016-01-08 23:39:50 +01:00
|
|
|
Lua table representation of the JSON data
|
2016-01-06 01:51:48 +01:00
|
|
|
|
|
|
|
####Example
|
|
|
|
```lua
|
|
|
|
t = cjson.decode('{"key":"value"}')
|
|
|
|
for k,v in pairs(t) do print(k,v) end
|
2016-01-08 23:39:50 +01:00
|
|
|
```
|