![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2009
Сообщений: 35
|
немогу коорректно выполнить код, он посстоянно возращает одинковые значения, хотя значения которые возращаются при каждом запросе разные.
вот код: где ошибка?( 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"); } ?method=getSpeedConnect&p1=&p2=&p3=&p4=&p5=&p6=&sig=965830a708b3d3a2fce485314ca19d2c <response> <val>0.0029149055481</val> </response> Последний раз редактировалось forhaxed; 24.06.2009 в 14:22. |
|
|||||
|
.
|
Ну а какие значения (p1 - p5) Вы передаете в метод? По трейсу я вижу что все они равны пустой строке. Ну естесственно, что MD5 будет один и тот же. Следовательно, Вы посылаете всегда одно и то же значение в строке запроса. Сервер Вам присылает то, что просили. Все тут корректно =)
|
|
|||||
|
Регистрация: Jun 2009
Сообщений: 35
|
сервер посылает каждый раз разные значения, хорошо, что бы было понятно: перефразирую
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. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Название темы не отражает сути вопроса.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 01:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|