Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как получить объект с сервера? (http://www.flasher.ru/forum/showthread.php?t=148940)

flax4Noob 15.01.2011 02:19

как получить объект с сервера?
 
Вопрос прост, но что-то я перечитал лишнего и пухнет моск или "Глаз замылился" )

Вопчим за 14 дней мой флеш-ролик вырос и полез за данными в Интернет. Логично рассудив, что BulkLoader это вчерашний день (В смысле - его я вчера использовал, 13го =) ) Седня ковыряю zendAMF, и почти все уже переделал под него, но есть затык... вот так я получаю с сервера строку:

Код AS3:

        var k = new SamplePhp();
        k.addEventListener(ResultEvent.RESULT, resultHandlerTest);
 
        var token:AsyncToken = k.test();
        var op:Object = new Object();
 
        function resultHandlerTest(event:ResultEvent):void {
                if (event.token == token){
                        trace("result:"+event.result.toString());
                        op        = Object(event.result);
                        trace ("op:"+op);
        }

;
Вооот.... когда функция test на сервере отдает
PHP код:

return "testString"

то все отлично трейсится.
но если я делаю
PHP код:

return array("testProperty"=>"testValue"); 

то все отваливаецца. Не вкурю что сделать) Гугл не лечит моск - там вообще на эту тему не много. Разве оно не обязано мне сделать из op объект со свойством testProperty?

зы. return type стоит Object в сервисе. Чорд) йа чую что истина где-то рядом. (с)

cleptoman 15.01.2011 11:02

сложные объекты флэшу нужны в понятном для него формате. как вариант поюзать AMF или JSON с последующей конвертацией.

flax4Noob 15.01.2011 12:36

Цитата:

Седня ковыряю zendAMF
а это не amf или тока жаву ставить на сервер? Где покурить ман по понятным форматам? Было же написано что только с датой проблема при передаче. Пипаняяятно же.

Добавлено через 12 минут
хм. Кнопка test встроенного тестера сервисов рисует мне нормальный ответ типа "объект" с нужными полями. Косяк в коде на as3 (

Котяра 15.01.2011 13:15

С сервера на клиент и обратно не передается никаких объектов. Всегда передаётся только некий набор байт или строка.
Чтобы преобразовать эту строку в объект нужно её сериализовать.

Форматы: json, xml, amf, protobuf

flax4Noob 15.01.2011 17:44

теория - это гуд. примеры использования существуют в природе?)

cleptoman 15.01.2011 18:02

существуют..в гугле их мильоны.

flax4Noob 15.01.2011 18:32

а можно линк хотя бы на один пример использования amf в as3? Раз "их мильоны", значит вы все-таки нашли хотя бы один.. да?

Добавлено через 35 минут
я канечн данные свои поимел, примерно таким способом:
Код AS3:

        tmpCollection = ArrayCollection(cr.lastResult);
        myObj.testData = tmpCollection[0].testData;

но протискивать все поля через ArrayCollection что-то не возбуждает. Должна быть толковая метода) Хотя... как-то в ас3 многое так) необычно.


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

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