Страница 1 из 1

PHP & API флеш непонимает =)

Добавлено: 10 сен 2011, 15:50
$Sasha$
Вообщем на сервере есть скрипт который возвращает в формате JSON список друзей пользователя.
Но обработать неполучается, флеш ругается :

Код: Выделить всё

TypeError: Error #1034: Ошибка типа Coercion: невозможно преобразовать Object@377a3491 в Array.    at api::Madhelli/Decode()    at Application/MainLoadFriends()    at flash.events::EventDispatcher/dispatchEventFunction()    at flash.events::EventDispatcher/dispatchEvent()    at flash.net::URLLoader/onComplete() 
Вот как обрабатываю JSON cтроку :

Код: Выделить всё

var AA:String = e.target.datavar AB:Array = JSON.decode(AA);
Помогите плиз =)

Самое интересное то что точно такой же код работает в другой функции!

Re: PHP & API флеш непонимает =)

Добавлено: 10 сен 2011, 17:32
bodnar
AB:Object

Re: PHP & API флеш непонимает =)

Добавлено: 11 сен 2011, 18:15
$Sasha$
AB:Object
Но библиотека JSON возвращает данные в Array!

Re: PHP & API флеш непонимает =)

Добавлено: 11 сен 2011, 18:31
bodnar
Не знаю где ты брал свою библиотеку, но
public static function decode( s:String ):* {
звездчку видешь? массив вернет только если в json закодирован массив, а если там закодирован не массив то все полетит к чертям, поэтому лучше использовать объект

Re: PHP & API флеш непонимает =)

Добавлено: 11 сен 2011, 20:40
$Sasha$
звездчку видешь? массив вернет только если в json закодирован массив, а если там закодирован не массив то все полетит к чертям, поэтому лучше использовать объект
Спс. неподскажешь где ты брал свою библиотеку?

Re: PHP & API флеш непонимает =)

Добавлено: 12 сен 2011, 05:26
ChineseBeemaster
Не соглашусь на счет массива!
JSON (pronounced /ˈdʒeɪsən/), or JavaScript Object Notation, is a lightweight text-based open standard designed for human-readable data interchange. It is derived from the JavaScript scripting language for representing simple data structures and associative arrays, called objects. Despite its relationship to JavaScript, it is language-independent, with parsers available for most languages.
JSON он был придуман как Объект, и не может понять что в него было закодировано, массим, или еще что-то иное, ВСЕГДА после раскодирования получается объект, но в PHP например можно указать второй параметр true тогда вернется массив (так и в других языках данные могут после распаковки быть преобразованы во что угодно по первое их состояние - объект)