Node JS Interviewfragen (Grundlegend bis Fortgeschritten) Teil 5

May 08 2023
Heute setze ich die Node JS Interview Question Series fort. Diese Serie basiert auf 5 Teilen, die die wichtigen Fragen abdecken, die in Interviews von Basic bis Advanced Before Start gestellt werden.

Heute setze ich die Node JS Interview Question Series fort. Diese Serie basiert auf 5 Teilen, die die wichtigen Fragen abdecken, die in Interviews von Basic bis Advanced gestellt werden

Bevor es losgeht. Wenn Sie ein Teil der CODE Culture Community sein möchten. Füllen Sie einfach das Formular aus, um an den kostenlosen Code Culture Sessions am Sonntag teilzunehmen und Antworten auf Ihre Fragen zum Thema Programmieren und Karriere zu erhalten. Ich bin formklick mich

1. Wie verwenden Sie Redis in Node.js?

Redis ist ein In-Memory-Datenspeicher, der zum Caching und zur Datenspeicherung in einer Node.js-Anwendung verwendet wird. Hier ist ein Beispiel für die Verwendung von Redis zum Zwischenspeichern von Daten:

javascriptCopy code
const redis = require('redis');
const client = redis.createClient();

function fetchData() {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      const data = 'Data fetched';
      resolve(data);
    }, 2000);
  });
}

async function getCachedData() {
  const data = await client.get('data');
  if (data) {
    console.log('Data retrieved from cache');
    return data;
  }
  const newData = await fetchData();
  await client.set('data', newData);
  console.log('Data retrieved from server');
  return newData;
}

getCachedData().then((data) => {
  console.log(data);
}).catch((error) => {
  console.error(error);
});

MongoDB ist eine beliebte NoSQL-Datenbank, die in Node.js-Anwendungen verwendet wird. Hier ist ein Beispiel für die Verwendung des offiziellen MongoDB Node.js-Treibers zum Herstellen einer Verbindung mit einer MongoDB-Datenbank:

javascriptCopy code
const { MongoClient } = require('mongodb');

async function main() {
  const uri = 'mongodb://localhost:27017';
  const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });
  try {
    await client.connect();
    console.log('Connected to MongoDB');
    const database = client.db('mydb');
    const collection = database.collection('mycollection');
    await collection.insertOne({ name: 'John' });
    const documents = await collection.find().toArray();
    console.log(documents);
  } catch (error) {
    console.error(error);
  } finally {
    await client.close();
    console.log('Disconnected from MongoDB');
  }
}

main();

Mongoose ist eine ODM-Bibliothek (Object Document Mapping) für MongoDB in Node.js. Es bietet eine Möglichkeit, Modelle und Schemas für MongoDB-Dokumente zu definieren, und erleichtert die Interaktion mit MongoDB in einer Node.js-Anwendung. Hier ist ein Beispiel:

javascriptCopy code
const mongoose = require('mongoose');

mongoose.connect('mongodb://localhost/mydb', { useNewUrlParser: true, useUnifiedTopology: true });

const personSchema = new mongoose.Schema({
  name: String,
  age: Number
});

const Person = mongoose.model('Person', personSchema);

const person = new Person({
  name: 'John',
  age: 30
});

person.save().then(() => {
  console.log('Person saved');
}).catch((error) => {
  console.error(error);
});

JSON Web Tokens (JWT) ist eine Möglichkeit, Informationen sicher zwischen Parteien in einer Node.js-Anwendung zu übertragen. Hier ist ein Beispiel für die Verwendung der jsonwebtokenBibliothek zum Signieren und Verifizieren von JWTs:

javascriptCopy code
const jwt = require('jsonwebtoken');

const secret = 'mysecret';

const payload = {
  name: 'John',
  email: '[email protected]'
};

const token = jwt.sign(payload, secret, { expiresIn: '1h' });

console.log(token);

jwt.verify(token, secret, (error, decoded) => {
  if (error) {
    console.error(error);
  } else {
    console.log(decoded);
  }
});

Axios ist eine beliebte Bibliothek, die zum Erstellen von HTTP-Anforderungen in einer Node.js-Anwendung verwendet wird. Hier ist ein Beispiel:

javascriptCopy code
const axios = require('axios');

async function fetchData() {
  try {
    const response = await axios.get('<https://jsonplaceholder.typicode.com/posts>');
    console.log(response.data);
  } catch (error) {
    console.error(error);
  }
}

fetchData();

javascriptCopy code
const fs = require('fs');

const readableStream = fs.createReadStream('input.txt');

readableStream.on('data', (chunk) => {
  console.log(`Received ${chunk.length} bytes of data.`);
});

readableStream.on('end', () => {
  console.log('Finished reading data.');
});

readableStream.on('error', (error) => {
  console.error(error);
});