查询:
如何使用连接到 MongoDB Atlas最新版本 Go 中更新的 mongodb srv URL 语法驱动程序?
解决方案:
以前,Go 驱动程序使用自定义 URL 解析器来连接到 MongoDB Atlas。然而,在 MongoDB 3.6 中,原生的 Go url.Parse 函数用于解析新的 URL 格式:
package main import ( "context" "log" "time" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/mongo/options" ) func main() { mongoURI := "mongodb+srv://admin:[email protected]/dbname?ssl=true&retryWrites=true" // Set a timeout for connection establishment. ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second) defer cancel() // Use mongo-go-driver to connect to Atlas. client, err := mongo.NewClient(options.Client().ApplyURI(mongoURI)) if err != nil { log.Fatal(err) } if err = client.Connect(ctx); err != nil { log.Fatal(err) } defer client.Disconnect(ctx) // Now you can perform database operations as usual. database := client.Database("go") collection := database.Collection("atlas") err = collection.InsertOne(ctx, bson.M{"username": "testuser"}) if err != nil { log.Fatal(err) } }
注意:
如果遇到“没有可访问的服务器”错误,请确保:
以上是如何使用更新的'mongodb srv” URL 语法从 Go 连接到 MongoDB Atlas?的详细内容。更多信息请关注PHP中文网其他相关文章!