В данном руководстве вы узнаете, как принимать и обрабатывать данные формы с помощью метода GET. Вы создадите простую форму HTML и увидите, как эти данные отправляются на ваш сервер через URL-адрес. Мы обсудим основы GET-запроса и обрисуем необходимые шаги в Express.js.

Основные моменты

  • Данные формы могут быть отправлены на сервер с помощью метода GET.
  • Переданные данные появляются в URL в виде параметров запроса.
  • Вы можете легко получить доступ и обработать параметры запроса.

Пошаговое руководство

Сначала начнем с создания HTML-формы. Действие вашей формы важно, поскольку оно указывает, куда отправляются данные формы.

Чтобы создать простую форму, добавьте следующее:

Создавайте веб-формы: легко понимать GET-запросы

Действие формы содержит путь, куда данные должны быть отправлены, в нашем случае /submitform. Затем на сервере Express мы определим обработчик GET. Для ввода используем простое текстовое поле:

Создавайте веб-формы: легко понимать GET-запросы

Когда форма настроена, убедимся, что сервер готов принять данные. Убедитесь, что вы сконфигурировали метод GET в своем сервере Express для обработки запросов.

Затем перезагрузите страницу, чтобы убедиться, что все работает. Если введите что-то в текстовое поле, вы можете отправить форму, нажав клавишу Enter, даже если кнопка отправки отсутствует.

Создавайте веб-формы: легко понимать GET-запросы

После отправки формы сервер должен вернуть ответ, который подтверждает успешную отправку данных.

Создавайте веб-формы: просто понимайте GET-запросы

Здесь вы можете увидеть переданные на сервер данные. В нашем случае параметр "Name" был добавлен в URL.

В коде сервера мы теперь рассмотрим соответствующий обработчик GET, который нам нужен для обработки запроса. Код будет находиться в вашем файле index.js. Вы можете определить обработчик следующим образом:

Создавать веб-формы: легко понимать GET-запросы

Теперь вы можете получить параметры запроса в коде сервера, обратившись к request.query. Вы можете также реализовать это в своем обработчике GET.

Создавайте веб-формы: легко понимать GET-запросы

При новой отправке формы вы увидите, что параметр корректно возвращается. Обратите внимание, что после каждого изменения в сервере нужно перезапускать сервер.

Создавать веб-формы: понимать GET-запросы легко

Для доступа к имени используйте формат request.query.Name. Если вы измените имя в форме, убедитесь, что параметр также корректно изменен в коде сервера.

Создавайте веб-формы: легко понимать запросы GET

Если вы измените имя в форме на first_name, требуемый параметр будет иметь следующий вид:

Создавайте веб-формы: Просто понимайте GET-запросы

Вы видите, что сервер корректно принимает и выводит данные:

Создавайте веб-формы: Просто понимайте GET-запросы

Теперь, с этими основными знаниями, вы можете обрабатывать принятые данные, например, сохранять их в базе данных, использовать их в другом месте или просто возвращать обратно.

Если хотите, вы даже можете отправить полученные данные обратно клиенту и выступать в качестве эхо-сервера.

Создавайте веб-формы: легко понимать GET-запросы

Вывод может выглядеть следующим образом:

Создавайте веб-формы: легко понимать GET-запросы

Если вы вводите специальные символы в текстовое поле, сервер также обработает и декодирует их соответственно. Вы обнаружите, что вывод будет выполнен правильно, независимо от символов, введенных пользователем.

Создание веб-форм: Простое понимание GET-запросов

Важно отметить, что различные серверные фреймворки обрабатывают кодировку по-разному. При использовании Express декодирование запросных параметров обычно уже включено, так что вам не нужно беспокоиться об этом.

Создавайте веб-формы: легко понимать GET-запросы

Теперь у вас есть основа для обработки GET-запросов, и мы также обсудили использование параметров запроса в фреймворке Express. Далее мы рассмотрим метод POST, требующий другой реализации.

Резюме

В этом учебнике вы узнали, как создать простое веб-приложение формы с методом GET. Процесс включает настройку HTML-формы, отправку данных формы на сервер Express и получение параметров запроса для дальнейшей обработки. Вы также увидели, как правильно сконфигурировать сервер для приема данных формы и реагирования на них.

Часто задаваемые вопросы

В чем разница между GET и POST?GET отправляет данные через URL, в то время как POST передает данные в теле запроса.

Как использовать несколько параметров в моей форме?Вы можете добавить несколько полей ввода в свою форму и, соответственно, настроить их имена.

Как работать с спецсимволами в данных формы?Express автоматически обрабатывает декодирование спецсимволов.

Нужно ли перезапускать сервер после каждого изменения?Да, все изменения в коде сервера требуют перезапуска сервера для вступления в силу.