Страницы

Поиск по вопросам

четверг, 25 октября 2018 г.

Как сделать кросс-доменный AJAX POST запрос?

Есть форма с инпутами. При клике на кнопку "Отправить", браузер делает пост запрос на указанный адрес и пользователь попадает на новую страницу. Это стандартный алгоритм работы


Задача заключается в том, чтобы заменить это дело на AJAX. Чтобы пользователь ввёл данные, нажал на кнопку и увидел сообщение об успешной отправке, но сам не перенаправлялся на другую страницу.
Проблема в том, что домен, на который делается POST запрос отличается от того, с которого идёт запрос.
Прочитал о том, что это можно сделать с помощью CORS. Но, как я понял, там сервер должен вернуть результат о том, разрешает ли он такой запрос или нет.
А существует ли метод решения поставленной задачи, который бы не спрашивал разрешения у сервера?
Существует ли метод фонового POST запроса на другой домен --- такой, чтобы ничего не настраивать дополнительно на сервере?
Буду признателен, если кто-нибудь приведёт пример.
UPDATE
Я изменил dataType на jsonp, но, как мне подсказали, получается GET, а не POST запрос.


Ответ

Можно создать скрытую форму, у которой target указывает на скрытый же iframe, заполнить ее из скрипта и отправить. Ограничение - ответ от сервера таким образом не получить.

Комментариев нет:

Отправить комментарий