Если вы просто хотите хранить и извлекать данные, вы, вероятно, захотите использовать класс SharedObject. См. Ссылка Adobe SharedObject для получения более подробной информации об этом.
Если вы хотите получить доступ к файлам cookie HTTP, вам нужно использовать ExternalInterface для общения с JavaScript. Для этого мы используем вспомогательный класс HTTPCookies.
HTTPCookies.as:
import flash.external.ExternalInterface;
public class HTTPCookies
{
public static function getCookie(key:String):*
{
return ExternalInterface.call("getCookie", key);
}
public static function setCookie(key:String, val:*):void
{
ExternalInterface.call("setCookie", key, val);
}
}
Вам необходимо убедиться, что вы включили javascript, используя параметр allowScriptAccess в вашем flash-объекте.
Затем вам нужно создать пару функций javascript, getCookie и setCookie, следующим образом (благодаря quirksmode.org )
HTTPCookies.js:
function getCookie(key)
{
var cookieValue = null;
if (key)
{
var cookieSearch = key + "=";
if (document.cookie)
{
var cookieArray = document.cookie.split(";");
for (var i = 0; i < cookieArray.length; i++)
{
var cookieString = cookieArray[i];
// skip past leading spaces
while (cookieString.charAt(0) == ' ')
{
cookieString = cookieString.substr(1);
}
// extract the actual value
if (cookieString.indexOf(cookieSearch) == 0)
{
cookieValue = cookieString.substr(cookieSearch.length);
}
}
}
}
return cookieValue;
}
function setCookie(key, val)
{
if (key)
{
var date = new Date();
if (val != null)
{
// expires in one year
date.setTime(date.getTime() + (365*24*60*60*1000));
document.cookie = key + "=" + val + "; expires=" + date.toGMTString();
}
else
{
// expires yesterday
date.setTime(date.getTime() - (24*60*60*1000));
document.cookie = key + "=; expires=" + date.toGMTString();
}
}
}
Если у вас есть HTTPCookies.as в вашем флеш-проекте и HTTPCookies.js загружен с вашей веб-страницы, вы сможете вызывать getCookie и setCookie из вашего флэш-фильма, чтобы получить или установить HTTP-куки.
Это будет работать только для очень простых значений - строк или чисел - но для чего-то более сложного вам действительно следует использовать SharedObject.