2 回答
TA贡献1831条经验 获得超9个赞
我遇到了类似的错误,但我发现我输入了错误的登录凭据。
这段代码对我有用:
package main
import (
"fmt"
"time"
"gopkg.in/mgo.v2"
)
//const MongoDb details
const (
hosts = "ds026491.mongolab.com:26491"
database = "messagingdb"
username = "admin"
password = "youPassword"
collection = "messages"
)
func main() {
info := &mgo.DialInfo{
Addrs: []string{hosts},
Timeout: 60 * time.Second,
Database: database,
Username: username,
Password: password,
}
session, err1 := mgo.DialWithInfo(info)
if err1 != nil {
panic(err1)
}
col := session.DB(database).C(collection)
count, err2 := col.Count()
if err2 != nil {
panic(err2)
}
fmt.Println(fmt.Sprintf("Messages count: %d", count))
}
TA贡献1966条经验 获得超4个赞
您需要在需要进行身份验证的数据库上调用.Login(user, pass string):
if err:= session.DB(authDB).Login(user, pass); err != nil { panic(err) }
请注意,这会验证session
,因此您从中 .Copy()或.Clone() 的每个其他会话也经过验证。
- 2 回答
- 0 关注
- 335 浏览
添加回答
举报