Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Можно ли определить URL объекта XMLHTTPRequest?
 
 автор: coloboc66   (05.03.2007 в 16:13)   письмо автору
 
 

Т.е. надо получить как-то доступ к этому параметру...

   
 
 автор: 12345   (05.03.2007 в 21:00)   письмо автору
 
   для: coloboc66   (05.03.2007 в 16:13)
 

Он же на клиенте, в браузере, и сам есть клиент, а УРЛ есть запрос к серверу, поддержанный через DNS.

Получить доступ по УРЛ можно через какой-либо сервер (не прокси).

   
 
 автор: coloboc66   (06.03.2007 в 12:52)   письмо автору
 
   для: 12345   (05.03.2007 в 21:00)
 

Нет, имеется ввиду вот что:

function ajax(url,data)
{
req = new ActiveXObject("Microsoft.XMLHTTP");
...
        if (req) {
...
            req.onreadystatechange = verify;
...
}
function verify()
{
if (req.readyState == 4)
  { if (req.status == 200){processReqChange();}
    else alert("Не удалось получить данные:\n"+req.statusText +' '+req.status+url);}// Вот этот url из veriry не видно, а делать глобальным его не хочется
}

   
 
 автор: bronenos   (06.03.2007 в 14:33)   письмо автору
 
   для: coloboc66   (06.03.2007 в 12:52)
 

verify отдельная функция
отдельно передавайте ей параметр

   
 
 автор: coloboc66   (06.03.2007 в 14:38)   письмо автору
 
   для: bronenos   (06.03.2007 в 14:33)
 

И как ей передать параметр, если она параметров не принимает?

   
 
 автор: bronenos   (06.03.2007 в 15:28)   письмо автору
 
   для: coloboc66   (06.03.2007 в 14:38)
 

может
= verify (url);

   
 
 автор: RMW   (06.03.2007 в 16:39)   письмо автору
 
   для: coloboc66   (06.03.2007 в 12:52)
 

Проще взять это значение из переменной url,
если не хотите использовать глобальные переменные
можно, например, прицепить к свойству функции:

function ajax(url,data) 
{
  ajax.url = url;
  ...
}
function verify()
{
  alert(ajax.url);
}

   
 
 автор: 12345   (06.03.2007 в 17:45)   письмо автору
 
   для: RMW   (06.03.2007 в 16:39)
 

Col: a чё ж так сформулировано тогда?

Удобнее тогда к объекту XMLHttp прицепить параметр после создания.

req.url = url

   
 
 автор: RMW   (06.03.2007 в 21:01)   письмо автору
 
   для: 12345   (06.03.2007 в 17:45)
 

Я так пробовал, но к осликовому объекту не цепляется,
пишет: "Объект не поддерживает это свойство или метод ".

   
 
 автор: bronenos   (06.03.2007 в 21:18)   письмо автору
 
   для: RMW   (06.03.2007 в 21:01)
 

может тогда не ajax.url а this.url
внутри то функции

   
 
 автор: RMW   (06.03.2007 в 21:28)   письмо автору
 
   для: bronenos   (06.03.2007 в 21:18)
 

Вот так я пробовал

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script>
var req = null;
function ajax(url) 

 
if(!req) try { 
req=new ActiveXObject('Microsoft.XMLHTTP'); 
} catch (e){} 

if(!req) try { 
req=new XMLHttpRequest(); 
} catch (e){}
 
this.url = url; 
verify(); 

function verify() 

  var x = new ajax();
  alert(x.url); 
}
ajax('test string');
</script>
</head>
<body>
</body>
</html>

Но получается бесконечная рекурсия
т.к вызов verify() находится внутри ajax(),
хотя если verify присвоить как обработчик
для onreadychange, то возможно будет
работать, не проверял.

   
 
 автор: bronenos   (06.03.2007 в 21:33)   письмо автору
 
   для: RMW   (06.03.2007 в 21:28)
 

я бы предложил так

if (!req)
{
  try
  {
    req = new XMLHttpRequest();
  }
  catch (e)
  {
    req = new ActiveXObject ('Microsoft.XMLHTTP');
  }
  finally
  {
    return;
  }
}

   
 
 автор: RMW   (06.03.2007 в 22:26)   письмо автору
 
   для: bronenos   (06.03.2007 в 21:33)
 

Спасибо большое, но я это выдрал
откуда-то, там ещё идёт попытка инициализации
Msxml2.XMLHTTP.

Я тут говорил по поводу this.url,
что, мол, может будет работать -
может и будет, но лучше не надо.
Ненужные сложности.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования