Các ký tự như @ bị hạn chế vì chúng làm rối cấu trúc của URL, lý do là vì MongoDB hiểu nó là dấu phân cách @. Thay vì điều này:
var mongoClient = require("mongodb").MongoClient;
mongoClient.connect("mongodb://myuser:[email protected]@myhost.documents.azure.com:10355/?ssl=true", function (err, db) {
db.close();
});
sử dụng cái này
mongoClient.connect("mongodb://myuser:myp%[email protected]:10355/?ssl=true", {
uri_decode_auth: true
}, function (err, db) {
db.close();
});
Để mã hóa mật khẩu, hãy sử dụng encodeURIComponent(password)
Bạn cũng có thể sử dụng cú pháp này.
mongoClient.connect("mongodb://myhost.documents.azure.com:10355/?ssl=true",
{user: 'username', pass: '[email protected]'}, function (err, db) {
db.close();
});
Trên các phiên bản mới hơn, hãy sử dụng
auth: {
user: 'username',
password: '[email protected]',
}
như bên dưới
mongoClient.connect("mongodb://myhost.documents.azure.com:10355/?ssl=true", {
auth: {
user: 'username',
password: '[email protected]',
}}, function (err, db) {
db.close();
});