[英]How do I Connect to MongoDB Atlas cluster from Ballerina?
我一直在尝试使用mongodb:Client
连接到 MongoDB Atlas 中的集群。 我找不到 Ballerina 客户端支持的任何connection string
。 我找不到任何建议如何这样做的示例代码。
以下是源代码
import ballerinax/mongodb;
configurable string app = ?;
configurable string pwd = ?;
mongodb:Client mongoCli = check new ({connection: {url: string `mongodb+srv://${app}:${pwd}@fina-a-journey.ugfjnsm.mongodb.net/?retryWrites=true&w=majority`}});
public function main() {
mongodb:Error? insert = mongoCli->insert({name: "Jhon", age: 16}, "users");
}
请参考https://lib.ballerina.io/ballerinax/mongodb/4.0.0/records/ConnectionConfig
你可以试试这个:
mongodb:ConnectionConfig mongoConfig = {
connection: {
url: "xxxxx"
},
databaseName: "MyDb"
};
mongodb:Client mongoClient = check new (mongoConfig);
我传递给客户端的连接字符串中的密码有一些特殊字符,应该使用 % 进行转义。 在 escaping 之后它起作用了。 这里指定https://www.mongodb.com/docs/atlas/troubleshoot-connection/#special-characters-in-connection-string-password
你可以试试这个
mongodb:ConnectionConfig mongoConfig = {
connection: {url: "mongodb+srv://<username>:<password>@xxxxx.xxxx.mongodb.net/?retryWrites=true&w=majority"},
databaseName: "xxxxx"
};
我在服务端点尝试过这个。
mongodb:Client mongoClient = check new (mongoConfig);
string collection = "test2";
map<json> doc = { "key1": "Value", "key2": "value2" };
check mongoClient->insert(doc, collection);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.