загрузить переменную в URLRequest. - PullRequest
0 голосов
/ 19 июля 2011

что нужно сделать, это позволить людям отправлять URL, а затем показывать изображение на сцене. поэтому я пошел и написал свой код, но он не работает, как я ожидал .. вот код

var myurl:String ; // a var to load the text in it
var reques:URLRequest = new URLRequest (myurl) ; // the urlrequest (i know that this only accept strings but what to do !!)
var loader:Loader = new Loader(); // the loader


loadit.addEventListener (MouseEvent.CLICK , loadthatimage ) //  button

function loadthatimage (ev : MouseEvent){
myurl = geurl.text ;  // geurl is the txt box i have on the stage
loader.load (reques);
addChild(loader);

}

некоторая помощь будет оценена .. спасибо заранее

Ответы [ 2 ]

1 голос
/ 19 июля 2011

Shanethehat ответ должен работать отлично. Но я бы сделал еще один шаг и сказал бы, даже не создавайте URLRequest, пока он вам не понадобится. Кроме того, в этом примере вы также можете вызывать addChild () сразу, а не в функции.

var loader:Loader = new Loader(); // the loader
addChild(loader);    

loadit.addEventListener (MouseEvent.CLICK , loadthatimage ) //  button

function loadthatimage (ev : MouseEvent){
    loader.load (new URLRequest(geurl.text));
}

Будьте осторожны, вы должны быть осторожны с вопросами безопасности. Прежде всего, песочница безопасности Flash Player не позволит вам загружать некоторый контент без настройки междоменных политик. Но, кроме того, вы вводите существенную уязвимость безопасности, позволяя им загружать только те URL, которые они хотят.

Кто-то может потенциально ввести вредоносный URL, который может привести к хаосу во Flash Player. Или они могут загрузить созданный ими SWF-файл, который воспроизводит ваш код. Поэтому вы можете оценить безопасность вашего продукта.

1 голос
/ 19 июля 2011

Вместо того, чтобы создавать URLRequest со строкой, вы можете создать его пустым и установить URL-адрес при нажатии кнопки:

var reques:URLRequest = new URLRequest (); //pass nothing yet
var loader:Loader = new Loader(); // the loader

loadit.addEventListener (MouseEvent.CLICK , loadthatimage ) //  button

function loadthatimage (ev : MouseEvent){
    reques.url = geurl.text ;  // geurl is the txt box i have on the stage
    loader.load (reques);
    addChild(loader);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...