gpt4 book ai didi

go - Couchbase GoLang 客户端找不到存储桶

转载 作者:IT王子 更新时间:2023-10-29 01:45:20 25 4
gpt4 key购买 nike

我有一个 TCP 服务器尝试使用 go-couchbase 客户端库连接到 Couchbase 数据库,但我收到一条错误消息,指出我尝试访问的名为“events”的存储桶不存在。

当我使用 Go 的官方 Couchbase 客户端库时,一切正常。

我注意到这两个客户端之间的区别是“池”的概念。我已将此池设置为“默认”。

什么会导致此 Go 客户端看不到我的存储桶?

cb, err := couchbase.Connect("http://address:port")
if err != nil {
log.Fatalf("Error connecting: %v", err)
}

cbPool, err := cb.GetPool("default")
if err != nil {
log.Fatalf("Error getting pool: %v", err)
}

cbBucket, err := cbPool.GetBucketWithAuth("events", "username", "password")
if err != nil {
log.Fatalf("Error getting bucket: %v", err)
}

最佳答案

我假设您遇到了某种身份验证错误。 API 有点困惑。 GetBucketWithAuth 应该这样调用:

GetBucketWithAuth("事件", "事件", "密码")

原因是客户端想要bucket用户名和bucket密码。存储桶用户名与存储桶名称相同。

话虽如此,我强烈建议您使用 gocb 而不是 go-couchbase。 gocb 是官方的 Couchbase go 客户端,而 go-couchbase 仅在 Couchbase 内部使用。事实上,许多使用 go-couchbase 的组件将开始使用 gocb,因为这个库更易于使用并且组织得更好。

https://github.com/couchbase/gocb

关于go - Couchbase GoLang 客户端找不到存储桶,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37314427/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com