Integracja MongoDB z Node.js PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Integracja MongoDB z Node.js

Zrobotyzowana współczesna aplikacja ma nośnik do przechowywania danych na swoim zapleczu, takim jak aplikacja Node, która może współpracować zarówno z nierelacyjnymi (takimi jak PostgresQL, MongoDB), jak i relacyjnymi (takimi jak MySQL, Oracle).

MongoDB to nierelacyjna baza danych, która jest stosunkowo łatwa w użyciu i wydajna, a jeśli jesteś programistą Node.js, który chce poznać korzyści, jakie przynosi i jak rozpocząć tworzenie bezpiecznej integracji z aplikacją Node, to jest przewodnikiem dla Ciebie!

W tym artykule dowiemy się, jak zintegrować/połączyć się z MongoDB; bardzo popularną nierelacyjną bazę danych z Node.js i zobacz, jak możemy ją wykorzystać w aplikacjach Node.

Uwaga: Aby kontynuować, musisz zainstalować Node.js. Możesz pobrać najdłuższą stabilną wersję (LTS) i zainstalować ją na lokalnym komputerze Oficjalna strona pobierania.

Krótka informacja o MongoDB

MongoDB to najpopularniejsza i najbardziej zaawansowana dokumentowa baza danych, w której wszystkie dane są przechowywane w Binary JSON (JavaScript Object Notation) znanym jako BSON. BSON jest dokument, bez potrzeby stosowania predefiniowanego schematu danych. Umożliwia przechowywanie w tym samym miejscu danych, do których aplikacja często uzyskuje wspólny dostęp, oraz ułatwia i przyspiesza odczyt bazy danych.

W przeciwieństwie do tabel relacyjnych kolekcje są samowystarczalne, co znacznie ułatwia pracę z nimi. Kiedy nowy dokument jest tworzony w kolekcji MongoDB, przypisywany jest do niego identyfikator, aby był unikalny dla tej kolekcji, a wewnątrz dokumentu można zdefiniować wiele pól; gdzie wartością może być wariant typów danych, począwszy od tablic, łańcuchów, liczb całkowitych, obiektów i tak dalej.

Aby manipulować danymi, interfejs API zapytań jest przydatny do wykonywania podstawowych operacji tworzenia, odczytu, aktualizacji i usuwania (CRUD) w bazie danych. Można również tworzyć indeksy pomocnicze, aby zapewnić optymalizację i sprawić, by typowe zapytania były niezwykle szybkie. Obsługiwane są również zapytania geoprzestrzenne, które umożliwiają znalezienie dokumentów w określonej lokalizacji geograficznej.

Pierwsze kroki z MongoDB

Zanim zaczniemy łączyć się z MongoDB z aplikacji Node, przejdź do oficjalnej strony internetowej MongoDB, aby zarejestrować się za pomocą Try Free przycisk (jeśli nie masz jeszcze konta):

Po utworzeniu konta przejdź do kliknięcia Build a Database i kliknij, aby utworzyć bazę danych:

Integracja MongoDB z Node.js PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Następnie utwórz współdzielony klaster (jest bezpłatny na zawsze!) i nadaj mu wybraną nazwę.

Wspólny klaster jest idealny do eksperymentowania w ograniczonej piaskownicy. W każdej chwili możesz przejść na klaster produkcyjny.

Integracja MongoDB z Node.js PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Po pomyślnym utworzeniu klastra kliknij przycisk Connect przycisk do połączenia z klastrem:

Integracja MongoDB z Node.js PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Pokazane są teraz cztery różne sposoby łączenia się z MongoDB, ale ponieważ chcemy połączyć się z aplikacją Node, wybierzmy Connect your application opcja:

Integracja MongoDB z Node.js PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Następnie zostaniesz poproszony o wybranie metody połączenia. Tutaj upewnij się, że wybrałeś Node.js jako sterownik i wybierz odpowiednią wersję (używam wersji 4.1 lub nowszej podczas pisania tego artykułu).

Wyświetlany jest również ciąg połączenia, który jest przydatny do łączenia naszego klastra MongoDB z aplikacją Node:

Integracja MongoDB z Node.js PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Teraz musimy utworzyć aplikację Node.js, aby połączyć się z bazą danych MongoDB.

Budowa aplikacji Node

W preferowanym katalogu dla tego projektu utwórz nowy folder:

$ mkdir integrating-mongodb-node

Następnie uruchomić npm init w terminalu, aby zainicjować aplikację Node za pomocą a package.json plik, który umożliwia nam śledzenie zależności aplikacji:

$ npm init

package name: (codes) integrating-mongodb-node
version: (1.0.0)
description: learning how to connect mongodb to a node app
entry point: (server.js)
test command:
git repository:
keywords:
author:
Is this OK? (yes) yes

Zapoznaj się z naszym praktycznym, praktycznym przewodnikiem dotyczącym nauki Git, zawierającym najlepsze praktyki, standardy przyjęte w branży i dołączoną ściągawkę. Zatrzymaj polecenia Google Git, a właściwie uczyć się to!

Teraz, gdy pomyślnie zainicjowaliśmy package.json, przejdźmy do instalacji dwóch pakietów, które będą pomocne w budowie naszego serwera. Pierwszy to Express.js, który jest frameworkiem webowym do szybkiego i łatwego tworzenia aplikacji Node:

$ yarn add express -D

Drugim pakietem, który byśmy zainstalowali, jest pakiet Mongoose, który pomógłby nam zbudować odpowiedni schemat dla naszej bazy danych w aplikacji Node:

$ yarn add mongoose -D

Po pomyślnym zainstalowaniu wymaganych zależności programistycznych możemy teraz napisać kod łączący naszą bazę danych MongoDB z naszą aplikacją Node.

W katalogu, który właśnie utworzyliśmy dla projektu, utwórz plik server.js filet

$ touch server.js

Następnie definiujemy podstawową konfigurację aplikacji Node w server.js, tworząc prosty serwer ekspresowy.



const express = require("express");
const mongoose = require("mongoose");
const app = express();

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

Możemy potwierdzić, że nasz serwer działa tak, jak powinien, uruchamiając następujący kod w terminalu.

$ node server.js

Co powinno skutkować:

Server started at port 8000

Teraz możesz wrócić do pulpitu nawigacyjnego MongoDB, aby skopiować URI (Uniform Resource Idenfier) ​​w celu połączenia aplikacji Node z bazą danych.

I server.js utwórz zmienną do przechowywania jednolitego identyfikatora zasobu i zastąp identyfikator URI z hasłem twojego konta MongoDB.



const express = require("express");
const mongoose = require("mongoose");
const app = express();

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

Następnie tworzymy funkcję asynchroniczną, która umożliwi nam połączenie z MongoDB, ponieważ nie wiemy, ile czasu może zająć wykonanie funkcji, zanim uzyskamy połączenie z bazą danych:

const express = require("express");
const mongoose = require("mongoose");
const app = express();

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";
async function connect() {
  try {
    await mongoose.connect(uri);
    console.log("Connected to MongoDB");
  } catch (error) {
    console.log(error);
  }
}
connect();

const port = 8000;
app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

Stworzyliśmy funkcję asynchroniczną, która rejestruje a Connected to MongoDB komunikat, gdy połączenie zostało pomyślnie nawiązane między MongoDB a aplikacją Node, i rejestruj wszelkie błędy, jeśli wystąpi błąd.

Teraz powinniśmy zrestartować serwer:

$ node server.js

I pomyślnie otrzymaj komunikat informujący nas, że zostało nawiązane bezpieczne połączenie między bazą danych MongoDB a aplikacją Node:

Server started at port 8000
Connected to MongoDB

W tym momencie, gdy wrócisz do pulpitu nawigacyjnego klastra projektu, zobaczysz teraz informacje, które pokazują, że ostatnio było połączenie z bazą danych:

Integracja MongoDB z Node.js PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Dobra ludzie, to jest to! Z powodzeniem zintegrowaliśmy bazę danych MongoDB z aplikacją Node.js.

Wnioski

W tym artykule dowiedzieliśmy się, jak utworzyć bezpieczne połączenie między aplikacją Node.js a bazą danych MongoDB. Teraz możesz łatwo zrobić to samo, gdy musisz zbudować aplikację przy użyciu MongoDB; bardzo popularna w ekosystemie nierelacyjna baza danych.

Nie zapominaj, że Dokumentacja MongoDB jest Twoim najlepszym przyjacielem do nauki o MongoDB, a aby dowiedzieć się więcej o tworzeniu aplikacji Express, skontaktuj się z Ekspresowa dokumentacja też.

Jeśli utkniesz podczas wykonywania samouczka, nie krępuj się przemyśleć Repozytorium GitHub dla projektu znaleźć swoją drogę.

Dodatkowe zasoby

Znak czasu:

Więcej z Nadużycie stosu