AJAX / jQuery / Javascript - доступ к странице во внешнем домене - PullRequest
1 голос
/ 30 сентября 2011

Вопрос довольно простой, ответа может и не быть. :)

Как сделать запрос AJAX (желательно с jQuery) на внешний домен, т.е. веб-адрес (например), полностью отличающийся от сервера, с которого вы запросили эту страницу

Я хочу получить HTML-страницу вне сервера и отобразить ее на своей странице.

Я также принимаю предложения другим способом, например, без использования AJAX.

Спасибо, сейчас.

Ответы [ 3 ]

3 голосов
/ 30 сентября 2011

Если вы пытаетесь взять HTML из этого домена и внедрить его на свою страницу, просто поместите его в iframe.

Если вы пытаетесь получить доступ к какому-либо API, выиспользовать JSONP.Вот хорошее описание того, как это работает: http://devlog.info/2010/03/10/cross-domain-ajax/

Обратите внимание, что JSONP потребует некоторых изменений в коде на стороне сервера.Если это популярный API, разработанный для этой цели, он, вероятно, уже поддерживает его.

1 голос
/ 30 сентября 2011

Возможно, это может помочь:

-> http://www.ajax -cross-domain.com /

0 голосов
/ 30 сентября 2011

Помимо JSONP, другим способом решения этой проблемы обычно является настройка «прокси» файла на вашем сервере в php / python / ruby ​​/ some-server-language. Ваш прокси-скрипт примет URL-адрес необязательно с некоторыми параметрами и выполнит скручивание в этом домене.

Таким образом, пример потока данных будет:

1) вызов ajax происходит от клиента, обращающегося к yourdomain.com. Запрос ajax указывает на yourdomain.com/proxy.php, передавая URL-адрес в виде записи или переменной get.

2) PHP-скрипт берет URL-адрес и выполняет curl, получает любые данные, возвращаемые вызовом, и возвращает или умирает или возвращает эти данные в каком-либо другом методе.

3) Данные передаются вызывающему ajax на yourdomain.com, теперь вы можете использовать эти данные.

Хотя из вашего описания звучит, что вам нужен только iframe:)

...