Что я делаю не так, пытаясь получить данные с помощью URLLoader? - PullRequest
0 голосов
/ 01 мая 2011

Эй, у меня есть документ php, динамически генерирующий следующее:

peerID=e224d6cac76ef3181d4804858d82ebeee7e67ad7bdd7b02f3857a700b0ec7fbc

(из get_peerID.php) Я использую следующий AS3, чтобы попытаться получить эти данные:

private var myLoader:URLLoader = new URLLoader();    
private function sendData():void {
                writeText("sending data...");
                var objSend:Object = new Object;
                objSend.peerID = myID.text;
                put_peerID.send( objSend );
                writeText("http://localhost/example.com/scripts/get_peerID.php?peerID=" + myID.text);
                var myRequest:URLRequest = new URLRequest("http://localhost/example.com/scripts/get_peerID.php?peerID=" + myID.text);
                myRequest.contentType = "text/plain"; 
                //var myLoader:URLLoader = new URLLoader();
                myLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
                configureListeners(myLoader); //.addEventListener(Event.COMPLETE,onComplete);
                myLoader.load(myRequest);


            }

            private function configureListeners(dispatcher:IEventDispatcher):void {
                dispatcher.addEventListener(Event.COMPLETE, completeHandler);
                dispatcher.addEventListener(Event.OPEN, openHandler);
                dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
                dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
                dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
                dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            }

            private function completeHandler(event:Event):void {                
                writeText("completeHandler: " + myLoader.data.peerID);
            }

            private function openHandler(event:Event):void {
                writeText("openHandler: " + event);
            }

            private function progressHandler(event:ProgressEvent):void {
                writeText("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
            }

            private function securityErrorHandler(event:SecurityErrorEvent):void {
                writeText("securityErrorHandler: " + event);
            }

            private function httpStatusHandler(event:HTTPStatusEvent):void {
                writeText("httpStatusHandler: " + event);
            }

            private function ioErrorHandler(event:IOErrorEvent):void {
                writeText("ioErrorHandler: " + event);
            }

, который генерирует следующий текст (из writeText()):

 sending data...
http://localhost/example.com/scripts/get_peerID.php?peerID=5131079b60ba3ae05f9d54568896db1e04f772f97bb98c6d525cb8ba3032798b
openHandler: [Event type="open" bubbles=false cancelable=false eventPhase=2]
httpStatusHandler: [HTTPStatusEvent type="httpStatus" bubbles=false cancelable=false eventPhase=2 status=200 responseURL=null]

Таким образом, он не дает мне данные, которые мне нужны.Я не уверен, что попробовать дальше.Я был на форумах весь день, поэтому любая помощь будет признательна.

1 Ответ

0 голосов
/ 01 мая 2011

Это не работает, потому что я запускал его на своем локальном хосте.Adobe сообщает: для Flash Player 8 и более поздних версий:

  • Загрузка данных не разрешена, если вызывающий файл находится в изолированной программной среде с локальной файловой системой, а целевой ресурс - из сетевой изолированной программной среды.
  • Загрузка данных также не разрешена, если вызывающий файл находится в сетевой изолированной программной среде, а целевой ресурс является локальным.

После того, как он выпущен и включен в сеть, он работает.*

...