Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   из flash получить html cookie (http://www.flasher.ru/forum/showthread.php?t=195799)

Evgan 13.03.2013 17:50

из flash получить html cookie
 
Приветствую.
Есть задача: из флешки узнать какие куки имеет html страница в которой размещена флешка.

Перво наперво попробовал следующий способ:
Код AS3:

if(ExternalInterface.available){
ExternalInterface.call("document.cookie");
}

Результат:
- в хроме - undefined;
- в мазиле - undefined;
- в опере - undefined;
- в IE - null;

После, посоветовали немного модифицировать данный код:
Код AS3:

if(ExternalInterface.available){
ExternalInterface.call("function() { return document.cookie; }");
}

В результате всё заработало, за исключением только IE ( в нём по прежнему результат - null)

Подскажите пожалуйста, есть ли гарантированный способ получения cookie (для всех браузеров)?

Спасибо.

Александр Мостовой 13.03.2013 18:30

Рекомендую использовать промежуточную функцию в JS которая будет получать куки и из флешки уже вызывать ее. Тогда вопрос у вас будет звучать "как получить куки в javascript".
Т.к. возможно для более старых версий ИЕ есть еще какие-то нюансы

PainKiller 13.03.2013 18:50

Лично я бы использовал плагин JQuery

Добавлено через 1 минуту
точно будет кроссбраузерно, хотя тащить все библиотеку ради такой фигни и тяжеловато, но можно хотя бы посмотреть как там обращение к кукам реализовано.

Evgan 13.03.2013 19:59

Может всё же по другому можно узнать html cookie? Без js.

Александр Мостовой 13.03.2013 20:17

Цитата:

Может всё же по другому можно узнать html cookie? Без js.
Ну вы то его (js) и используете
Код AS3:

ExternalInterface.call("function() { return document.cookie; }");


i.o. 14.03.2013 01:15

Насколько помнится, все запросы типа URLRequest флешплеер пропихивает через браузер, и куки автоматом передаются уже самим браузером.
И теперь вопрос - а зачему вообще ТСу куки во флешке?

Александр Мостовой 14.03.2013 03:17

Цитата:

И теперь вопрос - а зачему вообще ТСу куки во флешке?
Evgan, кстати да, есть подозрение что вы либо не знает о SaredObject либо о выше указанном факте, что флеш передает куки браузера, и для авторизации сессии, например, ничего не нужно делать дополнительно.

Иначе, действительно, зачем вам куки?

Evgan 14.03.2013 11:31

Цитата:

Сообщение от i.o. (Сообщение 1125157)
И теперь вопрос - а зачему вообще ТСу куки во флешке?

мне необходимы что бы по наличию конкретной переменной в html cookie (пусть она будет зваться "phone") отображать во флешке нужную информацию. И на наличие/отсутствие данной переменной "phone" в html cookie флешка никак не влияет, потому "SaredObject" мне тут не помощник.

Добавлено через 5 часов 45 минут
Цитата:

Сообщение от Evgan (Сообщение 1125066)
В результате всё заработало, за исключением только IE ( в нём по прежнему результат - null)

Решение данной проблемы нашлось: в html коде, где swf внедряется на страницу, в тег "object" добавляем атрибут:

PHP код:

id="flashObj" 



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

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