как отправить запрос на сервер js

Аватар пользователя Aleksey
Aleksey
01 апреля 2023

Для отправки запроса на сервер на языке JavaScript мы можем использовать объект XMLHttpRequest (XHR) или метод fetch.

Этот код отправляет GET-запрос на URL "/api/data" и выводит ответ сервера в консоль браузера с помощью console.log, если ответ успешный (статус код ответа 200 OK). Если ответ сервера неуспешный, то код выводит текст ошибки с помощью console.error.

Зачастую fetch метод короче и удобнее в использовании, однако XMLHttpRequest может быть полезен в ряде случаев. Разберем его синтаксис и работу:

const xhr = new XMLHttpRequest(); // создаем объект запроса

xhr.open('GET', '/api/data'); // настраиваем запрос (метод и URL)
xhr.send(); // отправляем запрос

xhr.onreadystatechange = function () { // подписываемся на событие изменения состояния запроса
  if (xhr.readyState === 4) { // если запрос завершен
     if (xhr.status === 200) { // если статус код ответа 200 OK
         console.log(xhr.responseText); // выводим ответ сервера
     } else {
         console.error(xhr.statusText); // выводим текст ошибки
     }
  }
};
  1. Сначала создается новый экземпляр объекта-запроса XMLHttpRequest.
  2. Настраивается запрос с помощью метода open, где определяется метод запроса (в данном случае GET) и URL, на который будет отправлен запрос.
  3. Запрос отправляется на сервер с помощью метода send.
  4. Подписываемся на событие onreadystatechange, которое срабатывает каждый раз, когда состояние запроса меняется.
  5. Проверяем состояние запроса readyState. Если readyState равен 4, то запрос завершен
0 0

Есть что добавить? Зарегистрируйтесь

или войдите в аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Курсы по программированию в Хекслете

Программирование

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Интенсивные курсы

Интенсивное обучение для продолжающих

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Тест-драйв

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Веб-разработка и автоматическое тестирование на Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Go

Курсы по веб-разработке на языке Go

Верстка

HTML

Современная верстка с помощью HTML и CSS

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Git

Система управления версиями Git, регулярные выражения и основы командой строки

Бесплатные курсы

Бесплатные курсы по тестированию, дата-аналитике, верстке, программированию на Python, Java, PHP и JavaScript.

Базы данных

Фреймворки