Может ли кто-нибудь сообщить мне, как использовать поддомен для вызовов ajax в основной домен?
Я знаю, что это требует использования CNAMES и прочего, но я все еще немного невежественен. Я хочу сделать AJAX-вызовы на ajax.samedomain.com, который, в свою очередь, будет ссылаться на данные / скрипты samedomain.com.
Я также знаю, что мне нужно как-то обойти проблему междоменной безопасности, и опять же я не уверен в этом.
Посмотрите на настройку document.domain
свойство в javascript. Я знаю, что раньше использовал его, чтобы разрешать обновления javascript между окнами в дочерних доменах (x.company.com и y.company.com). Может работать и с Ajax.
Вы не можете обойти безопасность политики одного происхождения в настоящее время, нейтрально для браузера, даже если все имена в конечном итоге указывают на одно и то же место. Видеть http://en.wikipedia.org/wiki/Same_origin_policy для получения дополнительной информации. Вы можете в некоторой степени обойти это, используя контент, загруженный через файлы сценария, включенные на страницу из того же домена в скрытом iframe, хотя это не так удобно, как запрос AJAX.
Вариант DNS, о котором вы думаете, вероятно, является одной из атак с отравлением DNS или чем-то подобным, который можно использовать для включения междоменного сценария в гнусных целях, если не применяются определенные исправления безопасности.
Здесь HTML5 postMessage
метод который можно использовать для получения сценария из разных мест, говорящего вместе, но не все распространенные браузеры поддерживают это, поэтому вы сокращаете свою потенциальную целевую аудиторию, если полагаетесь на эту функцию.