Доброго времени суток!
Новичок, и сразу встала задача - как вытащить строки из БД MongoDB и поместить их в переменную? Нужно прочитать все что есть в определенной коллекции и поместить это в переменную. Далее из этой переменной нужно результат отобразить на html страничке.
Может кто знает, что нужно для это сделать…
Вот сама структура кода (стратует сервер на 3000 порту, далее лезем в базу методом find() ) :
var http = require("http");
var fs = require("fs");
http.createServer(function(request, response){
console.log(`Запрошенный адрес: ${request.url}`);
if(request.url.startsWith("/2gis/index.html")){
var filePath = request.url.substr(1);
fs.readFile(filePath, function(error, data){
if(error){
response.statusCode = 404;
response.end("Resurs ne naiden");
}
else{
response.end(data);
}
return;
})
}
else{
// во всех остальных случаях отправляем строку hello world!
response.end("Hello World!");
}
}).listen(3000);
////////////////////////////////////////////////////////////////
const mongoClient = require("mongodb").MongoClient;
const url = "mongodb://localhost:27017/";
mongoClient.connect(url, function(err, client){
const db = client.db("usersdb");
const collection = db.collection("users");
if(err) return console.log(err);
collection.find().toArray(function(err, results){
console.log(results);
client.close();
});
});
Результаты Консоли:
(node:6516) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser:
true } to MongoClient.connect.
[ { _id: 5bcda20cf07d33392866ce14,
name: 'тестовый текст улица Мухтара Ауэзова, 10',
age: '15.10.2018',
kord: '51.166158, 71.425328' },
{ _id: 5bcda2f1f07d33392866ce15,
name: 'Тестовый текст 2 улица Сакена Сейфуллина, 34',
age: '16.10.2018',
kord: '51.170354, 71.422432' },
{ _id: 5bcda3bfc46c613260d39901,
name: 'Текстовый тест ',
age: '17.10.2018',
kord: '51.173739, 71.446909' },
{ _id: 5bcda3f56de4c2349c92f882,
name: 'Текстовый тест 2',
age: '18.10.2018',
kord: '51.188744, 71.455957' } ]
Все работает без ошибочно.