Мне определили местоположение одного сервера по example.com рабочий апач, служа моим статическим файлам HTML.
Мне также определили местоположение json сервиса по api.example.com под управлением Python с cherrypy.
Пользователь запрашивает example.com, и получите индексную страницу HTML. На той странице я выполняю ajax запрос с jQuery к json сервису. document.domain
возвраты example.com
$.ajax({
type: 'GET',
url: 'http://api.example.com/resource/',
dataType: 'json',
success: successCallback,
error: errorHandler
});
Однако я не вижу орган по ответу для запроса ajax в поджигателе. Это приводит меня полагать, что браузер (FF) не поддерживает это.
Что лучшие методы должны достигнуть этого? Я предпочел бы не использовать любое проксирование на апачском бэкенде для example.com, если это возможно.
Вы также можете использовать JSONP , добавив callback =? до конца URL-адреса. jQuery уже знает, как обрабатывать запросы такого типа, но для обработки параметра обратного вызова требуются некоторые изменения на стороне сервера.
Запрос AJAX поддерживается только в том же домене. Однако вы можете написать http-прокси на предпочитаемом вами языке сценариев и выполнять вызовы этого http-прокси. Вы можете ознакомиться с этим небольшим учебником по прокси AJAX, написанному на php.
попробуйте изменить свой домен в субдомене, например
<script type="text/javascript">
document.domain = 'example.com';
</script>
, если не работает, измените свой document.domain также на странице своего домена.
Используйте document.domain, чтобы сделать домен доменом верхнего уровня вместо поддомена.
document.domain="example.com"
Это подробно описано на MDN.
Насколько я знаю, вы не можете использовать междоменный AJAX.
Почему междоменный Ajax является проблемой безопасности?
Хотя я думаю, вы могли бы обойтись без IFRAME.