function sendByPOST(url, post_data) {
if (xmlHttp && WAIT_COMMAND == 0) {
WAIT_COMMAND = 1;
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttp.setRequestHeader("Referer", location.href);
xmlHttp.send(post_data);
return true;
} else {
return false;
}
}
function check_readystate() {
if (xmlHttp.readyState == 4 && xmlHttp.status == 200 && WAIT_COMMAND == 1) {
WAIT_COMMAND = 0;
// Данные успешно загружены
if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
a = xmlHttp.responseText;
try{
jsonData = JSON.parse(a);
} catch(e) {
// alert(e.description);
}
}
}
timer_readystate = setTimeout("check_readystate()", 250);
}
Проблема с кросс доменным обменом данными. Iframe и ajax.
У меня самописный чат.
Мой сайт (site.loc) раз в секунду опрашивает сервер с помощью ajax->php->curl, когда сайту приходит команда начать чат, на сайте открывается IFrame. В этот IFrame загружается окно чата с другого домена (chat.loc). При отправки данных из Iframe с помощью ajax методом post на сервер post данные не передаются, точнее видимо отсекаются или еще что-то. Делаю в php скрипте print_r там пусто, но видны GET.
Точнее на локальной машине все работает, а на хостинге возникает эта проблема.
Подскажите, это ограничение безопасности, или настройки апача, или все же ошибки в скриптах? Что можно сделать?
п.с.
Сам iframe (chat.loc) с создавшей его страницей (site.loc) данными не обменивается
Для ajax использую один и тот же скрипт (js загружается каждый со своего домена)
Код:
Разобрался, была ошибка в php скрипте.Ошибка обрабатывалась и делался редирект на себя и естественно POST дагные продапали %)