VB.NET
VB.NET
Firebase GET - Reading Data
See more Firebase Examples
Demonstrates how to read parts of a Firebase JSON database. The data used in this example is at Chilkat Firebase Pigs Database, and is shown here:
Chilkat VB.NET Downloads
Dim success As Boolean = False
' Demonstrates how to read parts of a Firebase JSON database.
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
' This example assumes a JWT authentication token, if required, has been previously obtained.
' See Get Firebase Access Token from JSON Service Account Private Key for sample code.
' Load the previously obtained Firebase access token into a string.
Dim fac As New Chilkat.FileAccess
Dim accessToken As String = fac.ReadEntireTextFile("qa_data/tokens/firebaseToken.txt","utf-8")
If (fac.LastMethodSuccess <> True) Then
Debug.WriteLine(fac.LastErrorText)
Exit Sub
End If
Dim rest As New Chilkat.Rest
' Make the initial connection (without sending a request yet).
' Once connected, any number of requests may be sent. It is not necessary to explicitly
' call Connect before each request.
success = rest.Connect("chilkat.firebaseio.com",443,True,True)
If (success <> True) Then
Debug.WriteLine(rest.LastErrorText)
Exit Sub
End If
' If authentication is required...
Dim authGoogle As New Chilkat.AuthGoogle
authGoogle.AccessToken = accessToken
rest.SetAuthGoogle(authGoogle)
' Chilkat's sample data (pig-rescue data) is publicly readable at: https://chilkat.firebaseio.com/.json
' Let's get the animals with the shallow parameter so we can see how many pigs exist.
Dim jsonResponse As String = rest.FullRequestNoBody("GET","/pig-rescue/animal.json?shallow=true")
If (rest.LastMethodSuccess <> True) Then
Debug.WriteLine(rest.LastErrorText)
Exit Sub
End If
' The JSON returned should look like this:
' {"-KI3bD-FU_Dake7sYOiP":true,"-KI3bD-FU_Dake7sYOiT":true,"-KI3bD-FU_Dake7sYOiS":true,"-KI3bD-FU_Dake7sYOiU":true,"-KI3bD-FU_Dake7sYOiV":true,"-KI3bD-FU_Dake7sYOiR":true,"-KI3bD-FU_Dake7sYOiQ":true}
Debug.WriteLine(jsonResponse)
' Parse the response so we can iterate over each pig in the database..
Dim piggyPath As New Chilkat.StringBuilder
Dim shallow As New Chilkat.JsonObject
Dim piggyData As New Chilkat.JsonObject
shallow.Load(jsonResponse)
Dim count As Integer = shallow.Size
Dim i As Integer = 0
While i < count
' Get each individual pig's data.
piggyPath.Clear()
piggyPath.Append("/pig-rescue/animal/")
piggyPath.Append(shallow.NameAt(i))
piggyPath.Append("/.json")
Dim piggyJson As String = rest.FullRequestNoBody("GET",piggyPath.GetAsString())
If (rest.LastMethodSuccess <> True) Then
Debug.WriteLine(rest.LastErrorText)
Exit Sub
End If
' Show this piggy's data...
' An example of one pig's data is shown here:
' {"birth":"February, 1998","from":"Middle Ave.","gender":"F","in-date":"January, 2000",
' "name":"Molly II","picture":{"caption":"Molly in the Pasture","description":"Black pig","file":"molly_th.jpg"},
' "species":"pot belly pig","type":"Cathy's Herd"}
Debug.WriteLine("---- " & i & " ----")
Debug.WriteLine(piggyJson)
' Let's get the pig's name, and the caption of the picture.
piggyData.Load(piggyJson)
Debug.WriteLine("name: " & piggyData.StringOf("name"))
Debug.WriteLine("caption: " & piggyData.StringOf("picture.caption"))
i = i + 1
End While
' Note: In many of the Chilkat examples, you may notice strange ways
' of doing something that should be simpler and shorter. For example,
' building the piggyPath (above) could've been written differently,
' with some simple string concatenation.
'
' The reason is that the Chilkat examples are written in a
' proprietary "example code" scripting language,
' and then automatically generated to each of the different programming
' languages you see on example-code.com. The code generation is
' limited in what it can do. For example, string concatentation
' is not yet a feature of the "example code" scripting language (as of May 2016),
' and therefore you won't see the use of a programming language's string
' concatentation operators in any example.
'