Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Go从firebase中的实时数据库中获取任何数据_Firebase_Go_Firebase Realtime Database - Fatal编程技术网

如何使用Go从firebase中的实时数据库中获取任何数据

如何使用Go从firebase中的实时数据库中获取任何数据,firebase,go,firebase-realtime-database,Firebase,Go,Firebase Realtime Database,我有一个简单的测试数据库,只有一行(键值),我无法从数据库中获取任何数据,尽管我使用docs for Go(AdminSDK-)。我尝试过搜索,但如何使用围棋的信息非常少 我的密码。 我的json文件。 在操场不工作的情况下,需要使用json文件并从代码编辑器/IDE执行 我发现的只是firebase的几个视频教程,他们展示了如何连接,但同样的东西对我来说并不适用。所有其他信息都是关于如何通过android、iphone和web(js)使用firebase的 在打印的最后一行,我得到一个空变量。

我有一个简单的测试数据库,只有一行(键值),我无法从数据库中获取任何数据,尽管我使用docs for Go(AdminSDK-)。我尝试过搜索,但如何使用围棋的信息非常少 我的密码。 我的json文件。 在操场不工作的情况下,需要使用json文件并从代码编辑器/IDE执行

我发现的只是firebase的几个视频教程,他们展示了如何连接,但同样的东西对我来说并不适用。所有其他信息都是关于如何通过android、iphone和web(js)使用firebase的

在打印的最后一行,我得到一个空变量。数据只是没有写入变量。 如果可以的话,请帮忙。提前谢谢


Plz也在此处发布您的代码,并尝试更具体地说明哪些“不起作用”,例如,输出哪些日志。另外请注意,您共享了一个.json文件,该文件允许您完全访问firebase,因此请确保尽快更改您的凭据。我无法从我的实时数据库中获取.json文件的数据。是的,我了解,它的测试数据库。问题解决后,我将立即处理它。您的代码正在尝试从名为
/admin\u permission
的路径读取。但是根据您的屏幕截图,您的数据库中只有一个
/typeClient
路径。是的,您是对的,我应该指定该路径,尽管相同的firebase Go文档指定了一个具有权限的角色(//该应用程序仅具有安全规则ref:=client.NewRef(/some_resource”))中定义的访问权限。在完全访问我的应用程序后,问题得到了解决。我必须说firebase团队应该学会制作类似facebook的IT产品,例如,facebook在学习react时提供了一个现成的测试应用程序。
package main

 import (
"context"
"fmt"
"log"

firebase "firebase.google.com/go"
"google.golang.org/api/option"
)

type Data struct {
TypeClient string `json:"typeClient,omitempty"`
}

var responseData structs.Data

func main() {
ctx := context.Background()

// Initialize the app with a custom auth variable, limiting the server's 
access
ao := map[string]interface{}{"uid": "my-service-worker"}
conf := &firebase.Config{
    DatabaseURL:  "https://test-v06f06-default-rtdb.firebaseio.com",
    AuthOverride: &ao,
}

// Fetch the service account key JSON file contents
opt := option.WithCredentialsFile("./test-v06f06-firebase-adminsdk-1ze0m- 
bbf3b57ef3.json")

app, err := firebase.NewApp(ctx, conf, opt)
if err != nil {
    log.Fatalln("Error initializing app:", err)
}
// fmt.Printf("%T\n", app)

client, err := app.Database(ctx)
if err != nil {
    log.Fatalln("Error initializing database client:", err)
}
// fmt.Printf("%T\n", client)

// The app only has access as defined in the Security Rules
ref := client.NewRef("/admin_permission")
// fmt.Printf("%T\n", ref)

// Get data
if err := ref.Get(ctx, &responseData); err != nil {
    log.Fatalln("Error reading from database:", err)
}
fmt.Println("Client Type -", responseData)}