C
C
Firebase JSON Put and Patch
See more JSON Examples
Demonstrates how to apply Firebase put and patch events to a JSON database.Chilkat C Downloads
#include <C_CkJsonObject.h>
void ChilkatSample(void)
{
const char *json1;
HCkJsonObject json;
json1 = "{\"a\": 1, \"b\": 2}";
json = CkJsonObject_Create();
// Use Firebase delimiters for JSON paths.
CkJsonObject_putDelimiterChar(json,"/");
CkJsonObject_Load(json,json1);
CkJsonObject_FirebasePut(json,"/c","{\"foo\": true, \"bar\": false}");
// Output should be: {"a":1,"b":2,"c":{"foo":true,"bar":false}}
printf("1) %s\n",CkJsonObject_emit(json));
CkJsonObject_FirebasePut(json,"/c","\"hello world\"");
// Output should be: {"a":1,"b":2,"c":"hello world"}
printf("2) %s\n",CkJsonObject_emit(json));
CkJsonObject_FirebasePut(json,"/c","{\"foo\": \"abc\", \"bar\": 123}");
// Output should be: {"a":1,"b":2,"c":{"foo":"abc","bar":123}}
printf("3) %s\n",CkJsonObject_emit(json));
// Back to the original..
CkJsonObject_FirebasePut(json,"/","{\"a\": 1, \"b\": 2}");
printf("4) %s\n",CkJsonObject_emit(json));
CkJsonObject_FirebasePut(json,"/c","{\"foo\": true, \"bar\": false}");
CkJsonObject_FirebasePatch(json,"/c","{\"foo\": 3, \"baz\": 4}");
// Output should be: {"a":1,"b":2,"c":{"foo":3,"bar":false,"baz":4}}
printf("5) %s\n",CkJsonObject_emit(json));
CkJsonObject_FirebasePatch(json,"/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}}}
printf("6) %s\n",CkJsonObject_emit(json));
CkJsonObject_Dispose(json);
}