Jquery: переменные формы POST и получить ответ HTTP?(Кросс-домен) - PullRequest
1 голос
/ 25 ноября 2010

Мне нужно отправить веб-форму в онлайн-сервис, который возвращает HTTP 200, если все прошло хорошо, и что-то другое, если форма была отправлена ​​неправильно. Использование AJAX - это то, что я хочу, чтобы появлялись красивые ошибки, чтобы сообщить моим пользователям, что они отправили грязную информацию.

Итак, я начал делать то, что делал ранее, что упоминается в этом вопросе , но так как форма отправляется в другой домен, кроме моего собственного (междоменный), это не заняло много времени чтобы выяснить, что Firefox отправил запрос OPTIONS вместо ожидаемого POST .

Поскольку эти параметры недоступны, я продолжил поиск и узнал о функции JSONP, которую я обнаружил , не поддерживающей POST для междоменных запросов .

Очевидно, моя голова вот-вот взорвется. Я что-то пропустил?

1 Ответ

2 голосов
/ 25 ноября 2010

Возможно, вы захотите посмотреть на window.postMessage в html5.Есть даже плагин jQuery под названием jQuery postMessage , который пытается обеспечить поддержку старых браузеров (через скрытые iFrames), которые еще не поддерживают его.

Как правило, публикация в отдельный домен нене поддерживается через ajax.Другая (возможно, более простая) альтернатива - просто создать прокси-скрипт на вашем собственном сервере, который принимает данные ajax и выполняет POST через curl для вашей внешней службы и просто возвращает код результата обратно на ваш собственный вызов ajax.Это не распространяется на междоменное ограничение, так как вы публикуете свой собственный домен.

...