У сьогоднішньому посібнику я покажу тобі, як отримувати дані форми на сервері за допомогою Node.js та Express. Ми разом налаштуємо простий сервер та пройдемо необхідні кроки для створення форм , які надсилатимуть дані на цей сервер. Цей посібник призначений для всіх, хто має базове розуміння JavaScript та Node.js і хоче розширити свої навички у сфері веб-розробки.
Головні висновки:
- Основи створення простого сервера Node.js з Express
- Створення каталогу проекту та встановлення потрібних пакетів
- Створення HTML-файлу для відображення та використання форм
- Обробка надісланих даних на сервері
Поетапний посібник
Спочатку нам потрібно налаштувати сервер для обробки надходящих даних форми. Тому почнемо з створення нового проекту Node.js.
Відкрий свій редактор, наприклад, Visual Studio Code, та відкрий термінал. Або використовуй звичайний термінал. Переконайся, що Node.js встановлено на твоєму комп'ютері.
Перейди до свого головного каталогу і створи новий підкаталог для своєї серверної програми. Я раджу назвати каталог "FormServerApp".
Увійди в новостворений каталог та ініціалізуй новий проект Node.js за допомогою команди npm init. Тобі буде пропоновано ввести деяку інформацію, таку як назва проекту, версія та файл входу. Ти можеш прийняти стандартні значення або ввести свої власні.
Після створення проекту ти побачиш файл package.json в каталозі. Цей файл містить всю метадані твого проекту. Тепер нам потрібно встановити Express, отже, ми виконаємо команду npm install express.
Після завершення встановлення перевір в файлі package.json, чи Express зазначено серед залежностей. Необхідно обов'язково переконатися, що встановлення пройшло успішно, перш ніж продовжувати.
Тепер ми створимо новий файл з назвою index.js, який буде слугувати точкою входу в наш застосунок. Цей файл буде містити основну логіку для нашого сервера Express.
На початку ти можеш провести короткий тест, додавши console.log("FormServer"); у файл index.js та запустивши його за допомогою node index.js, щоб переконатися, що все працює.
Тепер час використовувати Express у твоєму файлі index.js. Додай необхідний код для імпорту Express та створення додатку Express. Ось простий код для ініціалізації додатку Express та прослуховування порту.
Переконайся, що сервер працює на певному порті, наприклад, 3000. Перевір, чи додаток коректно функціонує, перейшовши у браузері за адресою localhost:3000. Ти повинен побачити вивід "Hello World".
Для підтримки форм у твоєму застосунку зараз нам потрібен файл index.html, який містить HTML-структуру для нашої форми. Спочатку створи нову папку з назвою "public". В ній розташуй файл index.html.
У файлі index.html просто встав HTML-каркас з формою. Ця форма буде надсилати дані на сервер пізніше.
Щоб надати статичні файли (HTML, CSS, JS) через сервер Express, використовуйте метод app.use(), щоб встановити папку "public" як статичний каталог. Таким чином, браузер може запросити файл index.html, коли ви відвідуєте localhost:3000/index.html.
Запустіть сервер та завантажте index.html у браузері, і ви повинні мати змогу правильно відобразити форму. Проте, якщо ви заповните і відправите форму, нічого не станеться, оскільки ми ще не реалізували серверну логіку.
На наступному етапі ми зосередимо увагу на серверній обробці даних форми. Це означає, що нам потрібно буде додати маршрут, який прийматиме та оброблятиме дані, відправлені формою. Готуйтеся до наступних кроків, щоб продовжити розвивати свою веб-додаток та додавати нові можливості!
Підсумок
У цьому навчальному посібнику ви дізналися, як створити простий сервер з використанням Node.js та Express. Ви ознайомилися з основами створення проекту Node.js, встановленням залежностей та роботою з HTML-формами. Ці кроки є важливими для обробки веб-форм на сервері.
Часто задавані питання
Як встановити Node.js?Node.js можна завантажити та встановити з офіційного веб-сайту.
Що таке Express?Express - це гнучкий веб-фреймворк Node.js, який надає різноманітні функції для веб- та мобільних додатків.
Як відправити дані форми на сервер?Ви можете створити HTML-форму та надіслати дані на серверний кінцевий пункт за допомогою Fetch або AJAX.