flash.media.Sound не отправляет заголовки HTTP-запроса
Я использую Flex 3 (ActionScript 3.0). Я использую прогрессивную загрузку HTTP для воспроизведения звуковых файлов. Я хочу защитить звуковые файлы, обслуживая их только тогда, когда запрос приходит из моего приложения Flex. Я выбрал самое простое решение - добавить заголовок HTTP к каждому запросу, отправленному из приложения. Но объект flash.media.Sound игнорирует заголовки, установленные в flash.net.URLRequest. Вот пример,
URLRequest sndFile = new URLRequest("http://blah.com/media/load_sound.php");
sndFile.requestHeaders = new Array(new URLRequestHeader("req-orgin", "myflexapp"));
Sound snd = new Sound(sndFile);
snd.play();
Значение req-origin приходит как ноль в load_sound.php. Когда я проверяю запрос с помощью Firebug, заголовки запроса на http://blah.com/media/load_sound.php не содержат заголовок.
Кто-нибудь знает, почему заголовок игнорируется? Есть ли другой способ определить, что запрос пришел из моего приложения Flex?
Спасибо
1 ответ
Flash Player имеет ограниченную поддержку заголовков по соображениям безопасности. Я считаю, что пользовательские заголовки поддерживаются только для запросов POST. Есть все виды ограничений.
Вы можете увидеть дополнительную информацию здесь: http://kb2.adobe.com/cps/403/kb403030.html
И здесь: http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/URLRequestHeader.html
Файл междоменной политики должен решить любые проблемы, смотрите здесь:
http://kb2.adobe.com/cps/403/kb403184.html
Удачи! (Вам это может понадобиться)