![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]() ![]()
Сообщение
#1
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3982 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Флеш для продвинутых
Shared Object && Cookie В этой теме мы рассмотрим применение таких возможностей флеша как Shared Object и Cookie. Сюда я перенёс некоторые посты из других тем посвящённые данной проблематике. |
|
|
![]()
Сообщение
#2
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3982 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата По поводу set и get Cookie. У меня по другому ругался: Код Error opening URL "file:///C|/Program%20Files/Macromedia/Flash%208/en/Configuration/Mmfdata/mmfdata4ffaf1df.xml" С записью то всё хорошо: Код Cookie.setCookie("test cookie"); В файле mmfdatacd019cf.xml появляется строка: "test cookie". Но ведь нужно её ещё прочитать. Как ты мог заметить, tiHo, просто трейсом так не выведешь кукис (с помощью trace(Cookie.getCookie()) - выводит пустой Output. Как я исследовал этот кукис, выяснилось, что возвращаемое значение объект, и в данном случае, XML. Поэтому нужно обработать кукис, чтобы добраться до его содержимого. Итоговый код для работы с кукисом: Код Cookie.setCookie("test cookie"); mycookie = Cookie.getCookie(); mycookie.onLoad = function () { trace (this); } Цитата Вот так. я незнаю, но думаю что камунибудь ето понадобится. Это не документированная функция. В флеш 8 тоже нет ни слова о Cookie. И если просто записывать (и не считывать и обрабатывать), то толку не будет никакого. Но я привёл уже код обработки полученного кукиса, так что полезность данной фичи сильно возрастает ![]() P.S. Код работает и в флеш 6/мх. Так что совместимость кукисов есть начиная с 6 и до 8 флеша. Только путь другой для хранения кукисов (8й в Program Files, 6й в Documents and Settings), в конце пути папка Mmfdata и файл xml (в обоих случаях имена различаются). Так что в случае разных версий флеш-плеера, кукисы будут в различных места, что означает ограниченную совместимость, как и в случае флеш-кукисов SharedObject. |
|
|
![]()
Сообщение
#3
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3982 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Код Cookie.setCookie ('<test>fckin cookie xml</test>'); - по сути то же самое что и SharedObject, но работает с ХМЛями. Как по мне, изначально появился именно этот класс, т.к. он есть менее навороченным.var cxml:XML = Cookie.getCookie (); cxml.ignoreWhite = true; cxml.onLoad = function ():Void { trace ("content: " + this.childNodes); }; Интересный пример ![]() ignoreWhite - тоже интересный момент. Я его в своём примере не привёл (в примере я вообще кукис не хмльный использовал, так что у тебя пример более правильный). Было бы интересней рассмотреть вариант более серьёзного кукиса, с несколькими xml-полями. И их перебором. Вот что я набросал: Код myCookie = "<test>fckin cookie xml</test><test>fckin cookie xml2</test>"; Cookie.setCookie (myCookie); var cxml:XML = Cookie.getCookie (); cxml.ignoreWhite = true; cxml.onLoad = function () { for (var aNode:XMLNode = this.firstChild; aNode != null; aNode = aNode.nextSibling) { trace(aNode); } }; Здесь в плане работы с XML можно много чего интересного напрограммить. Цитата И вообще, ASSetPropFlags - во флеше еще много всего интересного... Кто бы этому описание придумал? А то ведь половина из недокументированного фиг знает как работает и для чего вообще нужна... И эти все незадокументированные и интересные моменты нужно исследовать и продемонстрировать широким слоям флеш-разработчиков. И исследованием, структурированнием и описанием этого всего мог бы ты занятся в том числе - надеятся на других сильно не приходится. Мы бы могли этим вместе здесь на форуме занятся, по немногу не спеша, но исследовать и популяризировать undocumented возможности флеша. А популяризировать, помимо чтения посетителями страниц форума, мы можем в нашей рассылке, где, как я уже писал, я планирую начать цикл материалов по SharedObject, а также по Cookie. Там же можно и другие интересности рассмотреть. Также я у меня есть планы помимо undocumented, рассматривать другие интересные (нестандартные, малоизвестные, хотя и документированные, но нечасто используемые) аспекты применения Action Script. Сделаю раздел Flash for Advanced Use (Флеш для продвинутых). Так что продвигать в массы возможность есть (инструмент), осталось лишь материал подготавливать. |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 27.12.2010 - 02:05 |