Невозможно получить результат сценария Perl через Ajax (проблема с политикой того же происхождения)

Итак, этот Perl-скрипт:

http://hacheck.tel.fer.hr/xml.pl

вернет результат XML на основе данных формы POST, которые он получает.

У меня есть веб-страница на одном из моих доменов (ни один из которых не является hacheck.tel.fer.hr), и я хотел бы использовать этот Perl-скрипт через Ajax.

Теперь политика того же источника запрещает мне отправлять запросы Ajax из моего домена следующим образом:

$.post('http://hacheck.tel.fer.hr/xml.pl', {'textarea': '...'}, function(data) {
    // process data
});

Приведенный выше код выдает эту ошибку:

XMLHttpRequest не может загрузить http://hacheck.tel.fer.hr/xml.pl. Происхождение http://ecmazing.com не разрешено Access-Control-Allow-Origin.

Я хотел бы знать, какие у меня есть варианты (я хотел бы иметь возможность использовать этот сценарий Perl). Я знаю, что размещение моей веб-страницы в домене hacheck.tel.fer.hr, очевидно, решит мою проблему (и это действительно может быть выполнимо, но для этого мне придется связаться с администратором).

Но есть ли альтернативы?

Я слышал о CORS. Можно ли его использовать для решения моей проблемы? Если я правильно понимаю, с CORS вы должны указать на сервере, что разрешен другой домен, и чем веб-страницы из этого другого домена могут получать ответы от вашего сервера (или что-то в этом роде) :)?


person Šime Vidas    schedule 27.05.2011    source источник


Ответы (1)


Я слышал о CORS. Можно ли его использовать для решения моей проблемы?

Да, но только в браузерах, которые это поддерживают. Контроллер hacheck.tel.fer.hr должен будет настроить его.

Но есть ли альтернативы?

Проксировать запрос через собственный сервер

person Quentin    schedule 27.05.2011
comment
Ну, на самом деле только IE6 и IE7 не поддерживают CORS - мне не нужно поддерживать эти браузеры, так что все в порядке. - person Šime Vidas; 27.05.2011
comment
Возможно, вы знаете, какое конкретно действие должен выполнить администратор hacheck.tel.fer.hr? Мои знания о серверах очень ограничены. - person Šime Vidas; 27.05.2011
comment
Специфика будет зависеть от рассматриваемого веб-сервера. - person Quentin; 27.05.2011
comment
ОК, надеюсь, админ знает о CORS тогда... :) - person Šime Vidas; 27.05.2011