Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Закрытая тема
Старый 24.06.2009, 14:20
forhaxed вне форума Посмотреть профиль Отправить личное сообщение для forhaxed Найти все сообщения от forhaxed
  № 1  
forhaxed

Регистрация: Jun 2009
Сообщений: 35
По умолчанию URLRequest

немогу коорректно выполнить код, он посстоянно возращает одинковые значения, хотя значения которые возращаются при каждом запросе разные.
вот код: где ошибка?(

Код AS3:
	import com.hurlant.crypto.hash.MD5;
	import com.hurlant.util.Hex;
	import com.hurlant.util.Base64;
 
 
function Call(method:String,p1:String ="", p2:String ="",p3:String ="",p4:String ="",p5:String ="",p6:String ="") {
		//if($sig==md5($method.$param1.$param2.$param3.$param4.$param5.$param6."doforhaxed"))
		var address_api:String = "http://api.ru/api.php";
		var signature:String=method+p1+p2+p3+p4+p5+p6+"doforhaxed";
		var bytes:ByteArray = new ByteArray();
			bytes.writeUTFBytes(signature);
			bytes = new MD5().hash(bytes);
 
		var sig:String=Hex.fromArray(bytes);
 
		var request:URLRequest = new URLRequest(address_api);
		var vars:URLVariables = new URLVariables();
 
		trace("?method="+method+"&p1="+p1+"&p2="+p2+"&p3="+p3+"&p4="+p4+"&p5="+p5+"&p6="+p6+"&sig="+sig);
		request.contentType = "text/xml";
		request.method = "GET";
		var loader:URLLoader = new URLLoader();
		vars.method=method;
		vars.p1=p1;
		vars.p2=p2;
		vars.p3=p3;
		vars.p4=p4;
		vars.p5=p5;
		vars.sig=sig;
 
		request.data = vars;
 
		loader.addEventListener(Event.COMPLETE, completeHandler);
		loader.load(request);
 
		}
 
		function completeHandler(event:Event):void
		{
		var dataXML:XML = XML(event.target.data);
trace(dataXML.toXMLString());
		event.target.removeEventListener(Event.COMPLETE, completeHandler);
		event.target.close();
		}
 
function Button1Click(event:MouseEvent):void
{
 
 
	Call("getSpeedConnect");
 
}
пример который возращает trace:

?method=getSpeedConnect&p1=&p2=&p3=&p4=&p5=&p6=&sig=965830a708b3d3a2fce485314ca19d2c
<response>
<val>0.0029149055481</val>
</response>


Последний раз редактировалось forhaxed; 24.06.2009 в 14:22.
Старый 24.06.2009, 14:41
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 2  
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Ну а какие значения (p1 - p5) Вы передаете в метод? По трейсу я вижу что все они равны пустой строке. Ну естесственно, что MD5 будет один и тот же. Следовательно, Вы посылаете всегда одно и то же значение в строке запроса. Сервер Вам присылает то, что просили. Все тут корректно =)
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 24.06.2009, 14:52
forhaxed вне форума Посмотреть профиль Отправить личное сообщение для forhaxed Найти все сообщения от forhaxed
  № 3  
forhaxed

Регистрация: Jun 2009
Сообщений: 35
сервер посылает каждый раз разные значения, хорошо, что бы было понятно: перефразирую

Код AS3:
import com.hurlant.crypto.hash.MD5;
	import com.hurlant.util.Hex;
	import com.hurlant.util.Base64;
 
 
function Call(method:String,p1:String ="", p2:String ="",p3:String ="",p4:String ="",p5:String ="",p6:String ="") {
		//if($sig==md5($method.$param1.$param2.$param3.$param4.$param5.$param6."doforhaxed"))
		var address_api:String = "http://api.ru/api.php";
		var signature:String=method+p1+p2+p3+p4+p5+p6+"doforhaxed";
		var bytes:ByteArray = new ByteArray();
			bytes.writeUTFBytes(signature);
			bytes = new MD5().hash(bytes);
 
		var sig:String=Hex.fromArray(bytes);
 
		var request:URLRequest = new URLRequest(address_api);
		var vars:URLVariables = new URLVariables();
 
		trace("?method="+method+"&p1="+p1+"&p2="+p2+"&p3="+p3+"&p4="+p4+"&p5="+p5+"&p6="+p6+"&sig="+sig);
		request.contentType = "text/xml";
		request.method = "GET";
		var loader:URLLoader = new URLLoader();
		vars.method=method;
		vars.p1=p1;
		vars.p2=p2;
		vars.p3=p3;
		vars.p4=p4;
		vars.p5=p5;
		vars.sig=sig;
 
		request.data = vars;
 
		loader.addEventListener(Event.COMPLETE, completeHandler);
		loader.load(request);
 
		}
 
		function completeHandler(event:Event):void
		{
		var dataXML:XML = XML(event.target.data);
trace(dataXML.toXMLString());
		event.target.removeEventListener(Event.COMPLETE, completeHandler);
		event.target.close();
		}
 
function Button1Click(event:MouseEvent):void
{
 
 
	Call("getUptimeServer");
 
}

по идее должен возращать значения:
?method=getUptimeServer&p1=&p2=&p3=&p4=&p5=&p6=&si g=965830ad08b3d3a2fce485314ca19d2c
<response>
<val>1239856898</val>
</response>
через секунду:
?method=getUptimeServer&p1=&p2=&p3=&p4=&p5=&p6=&si g=965830ad08b3d3a2fce485314ca19d2c
<response>
<val>1239856899</val>
</response>
через секунду:
?method=getUptimeServer&p1=&p2=&p3=&p4=&p5=&p6=&si g=965830ad08b3d3a2fce485314ca19d2c
<response>
<val>1239856900</val>
</response>

а на деле возращает:
?method=getUptimeServer&p1=&p2=&p3=&p4=&p5=&p6=&si g=965830ad08b3d3a2fce485314ca19d2c
<response>
<val>1239856898</val>
</response>
?method=getUptimeServer&p1=&p2=&p3=&p4=&p5=&p6=&si g=965830ad08b3d3a2fce485314ca19d2c
<response>
<val>1239856898</val>
</response>
?method=getUptimeServer&p1=&p2=&p3=&p4=&p5=&p6=&si g=965830ad08b3d3a2fce485314ca19d2c
<response>
<val>1239856898</val>
</response>


Последний раз редактировалось forhaxed; 24.06.2009 в 14:54.
Старый 24.06.2009, 14:54
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Название темы не отражает сути вопроса.

Создать новую тему Закрытая тема Часовой пояс GMT +4, время: 01:10.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.