AJAX-запрос - это HTTP-запрос.
AJAX расшифровывается как асинхронный Javascript и XML. Это называется, что после первого API-интерфейса HTTP-клиента на основе браузера XMLHttpRequest.
HTTP-запросы не являются небезопасными по своей природе, но некоторые вещи могут затруднять HTTP-запросы.
Большой вопрос, связанный с запросами Ajax, заключается в том, что по крайней мере в прошлом HTTP-запрос может содержать информацию о сеансе / cookie.
Это означает, что если запросы Ajax не были ограничены в песочницах браузера (междоменный), это может означать, что владелец сайта A может сделать запрос к сайту B от имени пользователя.
Пример: вы вошли в популярную социальную сеть. Ваш браузер использует куки для идентификации вашего входа в сеанс. Я отправляю вам ссылку на evil.example.org. Если межсайтовых ограничений не было, я мог бы создать для вас HTTP-протокол + ваш сеанс в социальной сети и действовать от вашего имени.
Однако это не конец этой истории. Можно делать межсайтовые запросы. Это называется запросом CORS.
НО: способ, которым это работает, заключается в том, что владелец сайта, которому вы хотите сделать запрос, должен разрешить вход. В нашем предыдущем примере это означает, что социальной сети необходимо явно разрешить "evil.example.org «Чтобы сделать такие запросы.
Способ, которым этот сайт дает вам разрешение, - через заголовки CORS.
Другие способы обойти это через:
- Кадры, размещенные на сайте, к которому вы пытаетесь получить доступ. (с конкретным кодом)
- прокси под вашим контролем.
- Если сервер, к которому вы пытаетесь получить доступ, доставляет свое содержимое очень специфическим способом. (опять же, вам нужен контроль над целевым сервером).
Если вы управляете целевым сервером, лучше всего использовать CORS. Если вам не нравится, лучше всего настроить прокси, которым вы управляете.