Ответы пользователя по тегу Node.js
  • Не получается установить npm install. требуеться разобрать ошибку?

    scoffs
    @scoffs
    Frontend | C# | Student
    Все пакеты установились, но есть предупреждения о том, что в некоторых из них обнаружены уязвимости.

    Тут можно либо обновить пакеты до актуальных версий (что опасно на старых проектах и не факт, что поможет), либо заменить пакеты на другие. Ну или просто не обращать внимание.
    Ответ написан
    Комментировать
  • Как пропустить китайские иероглифы через регулярку?

    scoffs
    @scoffs
    Frontend | C# | Student
    Возможно это поможет
    _string.replace(/[^a-zа-яё\u4E00-\u9FFF0-9 `,:-]/gim, " ")


    \u4E00 - начальный символ диапазона китайских иероглифов в кодировке Unicode.
    \u9FFF - конечный символ диапазона китайских иероглифов в кодировке Unicode.
    Ответ написан
    5 комментариев
  • Как создать базу данных и связать с JAVASCRIPT?

    scoffs
    @scoffs
    Frontend | C# | Student
    У меня есть мелкий проект
    Там MERN стек - MongoDB / Express / React / NodeJS, может поможет

    А ванильный пример будет выглядеть как-то так:

    Для начала надо вообще сказать монго на пк, а потом и в проект
    npm install mongodb

    Потом можно в папке server подключиться к БД
    const { MongoClient } = require('mongodb');
    
    const url = 'mongodb://localhost:27017'; // URL базы данных
    const dbName = 'mydatabase'; // Имя базы данных
    
    const client = new MongoClient(url);
    
    async function connectToDatabase() {
      try {
        await client.connect();
        console.log('Connected to the database');
        return client.db(dbName);
      } catch (error) {
        console.error('Error connecting to the database:', error);
      }
    }
    
    module.exports = connectToDatabase;


    Делаем базовые маршруты
    const express = require('express');
    const connectToDatabase = require('./db'); // Путь к файлу подключения к базе данных
    
    const app = express();
    app.use(express.json());
    
    // Маршрут для сохранения данных в базу данных
    app.post('/data', async (req, res) => {
      const { email, phoneNumber, fullName } = req.body;
    
      try {
        const db = await connectToDatabase();
        const collection = db.collection('data'); // Имя коллекции
    
        const result = await collection.insertOne({
          email,
          phoneNumber,
          fullName,
        });
    
        res.status(201).json(result.ops[0]); // Отправить сохраненный документ обратно клиенту
      } catch (error) {
        console.error('Error saving data to the database:', error);
        res.status(500).json({ error: 'An error occurred' });
      }
    });
    
    app.listen(3000, () => {
      console.log('Server listening on port 3000');
    });


    Ну и базовая разметка
    <form action="/data" method="POST">
      <label for="email">Email:</label>
      <input type="email" id="email" name="email" required>
      
      <label for="phoneNumber">Phone Number:</label>
      <input type="tel" id="phoneNumber" name="phoneNumber" required>
      
      <label for="fullName">Full Name:</label>
      <input type="text" id="fullName" name="fullName" required>
      
      <button type="submit">Submit</button>
    </form>


    require лучше заменить на import (в packages.json указать надо "type": "module")
    Ответ написан
    3 комментария