MongoDB Atlas 无法连接到我的 golang 应用程序
MongoDB Atlas not connecting with my golang App
我是 golang 的新手,MongoDB 我一直在关注 mongoDb 的官方博客以开始使用 mongo-db 驱动程序,并且我'由于某种原因,我无法连接到我的 mongodb
这是代码,错误是"context deadline exceeded",提前感谢
package main
import (
"context"
"fmt"
"log"
"time"
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
// "go.mongodb.org/mongo-driver/mongo/readpref"
)
func main() {
client, err := mongo.NewClient(options.Client().ApplyURI("mongodb+srv://chandru:<Heregoesmypassword>@cluster0-9jkaf.mongodb.net/test?retryWrites=true&w=majority"))
if err != nil {
log.Fatal(err)
}
ctx, _ := context.WithTimeout(context.Background(), 20*time.Second)
err = client.Connect(ctx)
if err != nil {
log.Fatal(err)
}
defer client.Disconnect(ctx)
databases, err := client.ListDatabaseNames(ctx, bson.M{})
if err != nil {
log.Fatal(err)
}
fmt.Println(databases)
}
一个可能的原因是您没有使用 MongoDB Atlas 将您的 IP 列入白名单
请参考以下指南:https://docs.atlas.mongodb.com/security-whitelist/#view-whitelist-entries
请记住,如果您从本地计算机连接,您的 IP 地址可能会改变。您可以从您的 ISP 获取静态 IP 地址或通过另一台机器连接。
您也可以输入 0.0.0.0/0 以允许从任何 IP 访问,但这当然不太安全。
我是 golang 的新手,MongoDB 我一直在关注 mongoDb 的官方博客以开始使用 mongo-db 驱动程序,并且我'由于某种原因,我无法连接到我的 mongodb 这是代码,错误是"context deadline exceeded",提前感谢
package main
import (
"context"
"fmt"
"log"
"time"
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
// "go.mongodb.org/mongo-driver/mongo/readpref"
)
func main() {
client, err := mongo.NewClient(options.Client().ApplyURI("mongodb+srv://chandru:<Heregoesmypassword>@cluster0-9jkaf.mongodb.net/test?retryWrites=true&w=majority"))
if err != nil {
log.Fatal(err)
}
ctx, _ := context.WithTimeout(context.Background(), 20*time.Second)
err = client.Connect(ctx)
if err != nil {
log.Fatal(err)
}
defer client.Disconnect(ctx)
databases, err := client.ListDatabaseNames(ctx, bson.M{})
if err != nil {
log.Fatal(err)
}
fmt.Println(databases)
}
一个可能的原因是您没有使用 MongoDB Atlas 将您的 IP 列入白名单 请参考以下指南:https://docs.atlas.mongodb.com/security-whitelist/#view-whitelist-entries
请记住,如果您从本地计算机连接,您的 IP 地址可能会改变。您可以从您的 ISP 获取静态 IP 地址或通过另一台机器连接。
您也可以输入 0.0.0.0/0 以允许从任何 IP 访问,但这当然不太安全。