2010-12-09 1 views
25

Какие браузеры разрешают перекрестный домен ajax-звонки с Access-Control-Allow-Origin: *? Я устанавливаю службу REST и пытаюсь решить, нужно ли мне поддерживать JSONP, чтобы разрешить доступ к javascript через междоменный домен, или если он достаточно хорош, чтобы установить заголовок Access-Control-Allow-Origin.Какие браузеры допускают переадресацию ajax-вызовов с помощью Access-Control-Allow-Origin: *?

ответ

40

Here's one reference, предполагающий, что поддержка в современных браузерах является разумной (но см. Примечание в конце этого ответа), предполагая, что клиентский код специально обрабатывает проблему IE. (IE8 и IE9 CORS поддержки, но не через XMLHttpRequest   — вы должны использовать XDomainRequest вместо этого, и стоит отметить, что ни jQuery, ни Prototype делает это для вас в своих АЯКС оберток   — Я не знаю, о other libraries. IE10 наконец получает это право), что страница говорит, в сущности, что CORS поддерживается в настольных версиях:.

  • IE8 + (через XDomainRequest), IE10 + (правильно)
  • Firefox 3.6 +
  • Safari 4.0+
  • Chrome 6+
  • Opera 12.1+

... а также

  • IOS Safari 3.2+
  • Android 2.1+ браузер

Вы должны спросить себя, каков ваш целевой рынок и могут ли они до использования более старых версий IE, потому что it matters quite a lot, на кого вы нацеливаетесь. Но в целом вы все еще (на данный момент), вероятно, хотите посмотреть на интерфейс JSONP   —, даже на основном рынке США, IE6 + IE7 = около 20% пользователей. Я не знаю многих сайтов, которые могут просто игнорировать пятую часть рынка. :-) И если вы посмотрите на корпоративных пользователей или пользователей в Азии или Африке или Центральной Америке, это число заметно возросло. Вышеизложенное было правдой в 2010 году. Здесь, в 2013 году, Китай действительно единственный прорыв с использованием IE6 (> 24%). Во всем мире пользователи IE6 и IE7 перешли на IE8 и IE9, и даже крупные корпоративные и правительственные пользователи наконец «поняли» о рисках безопасности. IE8 будет с нами некоторое время (как это имеет место, поскольку IE идет на Windows   XP), но вы можете поспорить, что почти 20% использования IE9 скоро будет в IE10.

+0

Жаль, что я не могу голосовать дважды (один раз для таблицы поддержки, один раз для предупреждения об уменьшении числа пользователей IE 6 (/ 7)). – 2010-12-09 23:01:38

+0

Я сделал второй для вас, проблема решена ^^ – 2010-12-09 23:04:53

0

У меня возникли проблемы при использовании Access-Control-Allow-Origin: *. Я считаю, что это связано с кукисами и запросами предварительной проверки (POST). Поэтому лучше указать, из какого домена вы собираетесь совершать эти вызовы.

 Смежные вопросы

  • Нет связанных вопросов^_^