Как добавить событие в класс URLLoader? - PullRequest
0 голосов
/ 03 января 2012

С учетом события Actionscript 3 HTTPStatusEvent: HTTP_RESPONSE_STATUS , которое доступно ТОЛЬКО для AIR (а не Flash 9/10)

Цитата с сайта:

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0, Flash Lite 4

Я хотел бы добавить то же СОБЫТИЕ, расширив класс HTTPStatusEvent Actionscript 3 для Flash (9/10).

Я работаю над Adobe Flash CS3 и пытаюсь получить «последнее» местоположение загрузчика URL (я вызываю php с заголовком («Location: ...»);), поэтому я нужно место после его изменения. Это должно быть сделано непосредственно с помощью flash, и я не могу использовать php прокси, а не другие.

Кроме того, я не могу найти исходный код класса AIR HTTPStatusEvent, который мне нужен для получения события (в частности, свойств responseHeaders и responseURL, которые есть в классе AIR).

Конечно, если вы знаете какой-либо другой способ сделать это, не стесняйтесь поделиться им.

1 Ответ

0 голосов
/ 03 января 2012

Вы не можете сделать это таким образом.

Подумайте об этом: вы пытаетесь добавить поведение в класс URLLoader , расширяя класс событий, который выдается оттуда.Образно говоря, это немного похоже на изменение размера бумаги, когда вы только писали письма своему ближайшему соседу, и теперь вы хотите, чтобы они отправлялись за границу - если вы не отдадите их на главную почту, это не будет очень успешным....

Я наткнулся на ряд обсуждений на этом форуме, и большинство из них, похоже, согласны с тем, что Adobe запретила доступ к заголовкам ответов в версиях Flash до FP10 / AIR из-за некоторыхсвоего рода проблема безопасности .Я не уверен, насколько точна эта информация, но я совершенно уверен, что обойти это невозможно - вы не можете получить заголовок Location: в старых версиях Flash.

Вам нужно будет найти другой обходной путь.Например, если у вас есть доступ к сценарию PHP, вы можете добавить комментарий HTML, содержащий местоположение перенаправления, и проанализировать это значение в ActionScript.

<!-- Location: http://google.com/ -->
...