У меня следующая проблема. Мне нужно создать виджет JS и установить его на один блог, например, любой блог на blogger.com. Вы можете выбрать там ящик для javascript, и я опубликую JS в этом окне.
Проблема, которую я имею и не знаю, как это сделать, заключается в том, что скрипт должен выполнить опрос ajax для exmaple в течение 60 секунд. Но как выполнить ajax-вызов, когда хост не совпадает с хостом, в который входит JS?
Например, самый простой способ объяснить это: есть окно поиска, и когда enayone ищет anythign, JS-скрипт должен передавать результаты в течение 60 секунд с сервера, что я установил в этом скрипте, и отличается от хост, в который входит JS, без проблем с ограничением JS для хостов.
Или, например, чат-клиент, где клиент размещен на одном другом хосте, а сервер на другом.
Может кто-нибудь подсказать мне идею или прислать мне пример, как это сделать?
Спасибо
Nik
Ну, с этим примером это возможно, но без JSONP?
function asyncreq(url) {
var xmlhttp = false;
try {
xmlhttp = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
xmlhttp = false;
}
}
}
if (xmlhttp){
try {
xmlhttp.open("GET", url);
xmlhttp.onreadystatechange=function() {
document.getElementById('mydiv').innerHTML = xmlhttp.responseText;
}
xmlhttp.send(null);
}
catch (failed) {
xmlhttp = false;
}
}
}
Если вы отправляете ответ кусками, то все в порядке. Но здесь снова вызов в ajax. И когда я использую его на другом хосте, я не могу вызвать URL из-за политики того же происхождения.
Есть ли другой способ?
Я нашел очень интересный пример здесь .
Посмотрите внизу, там есть окно поиска работы. Если вы исследуете небольшой бит, то увидите, что используется класс RSL (), который выполняет запрос. Как этот класс делает запрос без ajax? Я не могу понять вау этот класс работает. Кто-нибудь может показать мне лучший пример?