Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Помогите! Серверный JS (https://javascript.ru/forum/server/3344-pomogite-servernyjj-js.html)

swa 10.04.2009 10:30

Помогите! Серверный JS
 
Пожалуйста, помогите с переадресацией запроса.
Есть клиентское приложение (MIDP), посылающее GET запросы на сервер, и получает оттуда ответ в XML.
Необходимо перенаправить запрос на внешний сервер и полученный от внешнего сервера XML (той же стурктуры) снова отдать запрашивающему приложению.

Вадим

P.S. Было предложен вот такой скрипт, который, к сожалению, не работает...

<script language="VBScript" runat=Server>
function getResults()
Dim xmlDOC
Dim bOK
Dim HTTP
Set HTTP = CreateObject("MSXML2.XMLHTTP")
Set xmlDOC =CreateObject("MSXML.DOMDocument")
xmlDOC.Async=False
HTTP.Open "GET","http://m.tele-club.ru/rasspisanie/modules/exp_xml.php?m=exp_xml&idu=91&idf=94&idg=66&d=2009-08-31", False
HTTP.Send()
bOK = xmlDOC.load(HTTP.responseXML)
response.write(bOK)
</script>

Kolyaj 10.04.2009 10:56

Цитата:

Сообщение от swa
language="VBScript"

Вы форумом не ошиблись?

swa 10.04.2009 11:07

простите! Конечно в скрипте ошибка - это не тот скрипт :(
Вот на JS:

<script language="javascript" runat="server">
var xmlhttp;

function loadXMLDoc(url) {
xmlhttp = null;
if (window.XMLHttpRequest) {// Для всех браузеров кроме ослов 5 и 6
xmlhttp = new XMLHttpRequest();
}
else if (window.ActiveXObject) {// для IE5-6
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp != null) {
xmlhttp.onreadystatechange = state_Change;
xmlhttp.open("GET", url, true);
xmlhttp.send(null);
}
else {
alert("Your browser does not support XMLHTTP.");
}
};

loadXMLDoc("http://m.tele-club.ru/rasspisanie/modules/exp_xml.php?m=exp_xml&idu=91&idf=94&idg=66&d=2009-08-31");
Response.Write(xmlhttp.toString());
</script>

swa 10.04.2009 11:08

кстати, ни тот ни другой не работают :)

Riim 10.04.2009 11:25

а Response.Redirect не подходит почему?

swa 10.04.2009 11:33

Прямая переадресация запрещена MIDP. Ответ может быть получен только от сервера, к которому происходит запрос.

x-yuri 10.04.2009 11:55

ну так этот сценарий, как я себе представляю, на клиенте, а не на сервере выполняться должен. И соответственно на клиенте объекта Response нету. И результат запроса можно получить в функции state_Change, которая тоже должна быть клиентской
p.s. и переадресации никакой я тут не вижу. Вижу ajax-запрос. Да и не серверный js это, если я правильно понял

swa 10.04.2009 12:01

Нужен именно серверный вариант.
Показанный текст - это предложенный вариант. Он неправильный.
В серверном, как минимум, нет объектов window :)

swa 10.04.2009 12:06

Буду благодарен за работающий код на JS или VBS!

Можно для этой цели открыть проект на weblancer или в другом подходящем месте. Или просто сказать свой WM.

Riim 10.04.2009 12:26

Цитата:

Сообщение от swa
Ответ может быть получен только от сервера, к которому происходит запрос.

Может Server.Transfer() сгодится?


Часовой пояс GMT +3, время: 10:45.