package main
import (
"context"
"fmt"
"log"
"google.golang.org/api/option"
"firebase.google.com/go"
"firebase.google.com/go/db"
)
func main() {
// Initialize Firebase App
opt := option.WithCredentialsFile("path/to/firebase/serviceAccountKey.json")
app, err := firebase.NewApp(context.Background(), nil, opt)
if err != nil {
log.Fatal(err)
}
// Initialize Realtime Database client
client, err := app.Database(context.Background())
if err != nil {
log.Fatal(err)
}
// Reference to the root of your Firebase Realtime Database
ref := client.NewRef("/")
// Reading data from the root
var rootData map[string]interface{}
if err := ref.Get(context.Background(), &rootData); err != nil {
log.Fatal(err)
}
fmt.Printf("Root data: %v\n", rootData)
// Reference to a child node
childRef := ref.Child("yourChildNodeName")
// Reading data from the child node
var childData map[string]interface{}
if err := childRef.Get(context.Background(), &childData); err != nil {
log.Fatal(err)
}
fmt.Printf("Child data: %v\n", childData)
}