Как лучше загружать внешние ресурсы с помощью ajax? - PullRequest
0 голосов
/ 14 декабря 2011

Мне нужно загрузить внешние ресурсы с другого сервера, такие как css, template, data ... но я не знаю, как лучше это сделать.Естественно, когда мы загружаем внешний файл, возникает проблема Access-Control-Allow-Origin.

Итак, решения:

- jsonp

- разрешить передачу с помощью proxy.php, как здесь:

// If I want style.css the url for ajax call is /proxy.php?file=style.css
header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN']);
echo file_get_contents($_GET['file']);

Как мы ведем себя в этих случаях?

1 Ответ

1 голос
/ 14 декабря 2011

CSS может быть передан между доменами с помощью тега <link>, который вы можете сгенерировать в javascript и добавить к <head>, скрипты могут быть добавлены к <head> точно так же, как css или загружены с использованием jquery $.getScript, иданные могут быть переданы с помощью jsonp с помощью jquery $.ajax или $.getJSON.

Для любых других форм данных потребуется прокси на стороне сервера.

Я лично предпочитаю использовать jsonp при передаче данных, однако, когда это невозможно, единственным другим вариантом является прокси на стороне сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...