Lua
Lua
Firebase JSON Put and Patch
See more JSON Examples
Demonstrates how to apply Firebase put and patch events to a JSON database.Chilkat Lua Downloads
local chilkat = require("chilkat")
local json1 = "{\"a\": 1, \"b\": 2}"
local json = chilkat.JsonObject.new()
-- Use Firebase delimiters for JSON paths.
json.delimiter_char = "/"
json:load(json1)
json:firebase_put("/c", "{\"foo\": true, \"bar\": false}")
-- Output should be: {"a":1,"b":2,"c":{"foo":true,"bar":false}}
print("1) " .. json:emit())
json:firebase_put("/c", "\"hello world\"")
-- Output should be: {"a":1,"b":2,"c":"hello world"}
print("2) " .. json:emit())
json:firebase_put("/c", "{\"foo\": \"abc\", \"bar\": 123}")
-- Output should be: {"a":1,"b":2,"c":{"foo":"abc","bar":123}}
print("3) " .. json:emit())
-- Back to the original..
json:firebase_put("/", "{\"a\": 1, \"b\": 2}")
print("4) " .. json:emit())
json:firebase_put("/c", "{\"foo\": true, \"bar\": false}")
json:firebase_patch("/c", "{\"foo\": 3, \"baz\": 4}")
-- Output should be: {"a":1,"b":2,"c":{"foo":3,"bar":false,"baz":4}}
print("5) " .. json:emit())
json:firebase_patch("/c", "{\"foo\": \"abc123\", \"baz\": {\"foo\": true, \"bar\": false}, \"bax\": {\"foo\": 200, \"bar\": 400} }")
-- Output should be: {"a":1,"b":2,"c":{"foo":"abc123","bar":false,"baz":{"foo":true,"bar":false},"bax":{"foo":200,"bar":400}}}
print("6) " .. json:emit())