CNAME/AJAX субдомен указывает на домен

Может ли кто-нибудь дать мне знать, как использовать поддомен для вызовов ajax на основной домен?

Я знаю, что это требует использования CNAMES и еще много чего, но я все еще немного невежественен. Я хочу сделать AJAX-вызовы на ajax.samedomain.com, который, в свою очередь, будет ссылаться на данные / скрипты samedomain.com.

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

2 ответа

Решение

Вы не можете вообще обойти политику безопасности одного и того же происхождения в нейтральной браузерной манере, даже если в конечном итоге все имена указывают на одно и то же место. Смотрите http://en.wikipedia.org/wiki/Same_origin_policy для получения дополнительной информации. Вы можете обойти это в некоторой степени, используя контент, загруженный через файлы сценариев, включенные в страницу из того же домена, в скрытом iframe, хотя это не так удобно, как запрос AJAX.

Вариант DNS, о котором вы думаете, это, вероятно, одна из атак отравления DNS или что-то подобное, которую можно использовать для включения междоменных сценариев в гнусных целях, если не применяются определенные исправления безопасности.

Есть HTML5 postMessage метод, который можно использовать для совместной работы сценариев из разных мест, но пока не все обычные браузеры поддерживают это, поэтому вы сокращаете свою потенциальную целевую аудиторию, если полагаетесь на эту функцию.

Посмотрите на настройку document.domain собственность в javascript. Я знаю, что использовал его, чтобы разрешить обновления javascript между окнами дочерних доменов (x.company.com и y.company.com) раньше. Может хорошо работать и для Ajax.

Другие вопросы по тегам