Posts Tagged ‘ActionScript 2’
Flash Lite en basic HTTP auth
Published by Ronny on September 21st, 2008 in Actionscript, Flash, Tutorial. No commentsIk ben de laatste dagen erg druk bezig geweest met een (erg cool) Flash Lite project (waar ik binnenkort eindelijk over zal schrijven). Hoewel deze post over mijn ervaring in Flash Lite gaat is het in Actionscript 2 voor Flash Player ook van toepassing. Voor Actionscript 3 zal de werkwijze vrijwel analoog zijn.
Tijdens het ontwikkelen van de applicatie ben ik op het probleem gestoten dat ik data moest inladen die gebruikersspecifiek waren. Daarenboven zat er ook gevoelige data bij, die dus beveiligd moest verstuurd worden.
Mijn collega (die de server-side van het project ontwikkelt) stelde een aantal mogelijkheden voor waaronder basic HTTP authentication. Dit leek me een goede manier om het te proberen. Jammer genoeg bleven mijn zoektochten op Google naar duidelijke uitleg onbeantwoord. Door het samenrapen van een 3 tutorials en bronbestanden had ik het eindelijk door.
In feite is basic HTTP auth in Flash (Lite) echt doodsimpel. (Ik versta niet waarom iedereen daar altijd zo’n rond-de-pot-gedraai aan toevoegd.)
To the point: Stel ik wil XML inladen (mbv Actionscript 2). Dat doen we over het algemeen zo:
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = xmlComplete;
xml.load('http://example.com/somepage.php');
function xmlComplete(success){
if(success){
//logica komt hier
}
}
Heel basic, zonder authentication. Niets nieuws, dus. Maar wat als somepage.php je om een gebruikersnaam en wachtwoord vraagt?

Dit kan blijkbaar heel makkelijk opgelost worden, door gebruik te maken van de addRequestHeaders method (die zowel voor de XML class, de webservice class, alsook voor LoadVars class beschikbaar is), en de Base64 class (download hier).
Je code ziet er dan als volgt uit.
var auth:String = Base64.Encode("myUsername:myPassword");
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = xmlComplete;
xml.addRequestHeader("Authorization","Basic "+auth);
xml.sendAndLoad('http://example.com/somepage.php',xml);
function xmlComplete(success) {
if(success){
//logica komt hier
}
}
Er zijn 2 grote verschillen. In dit voorbeeld gebruiken we de addRequestHeaders method om de gebruikernaam en het wachtwoord aan de requestHeaders van het XML object toe te voegen. Deze moeten wel eerst via Base64 geëncode worden alvorens dat de basic HTTP auth deze ontvangt. Daarnaast gebruiken we ook de sendAndLoad method zodat de headers meegestuurd worden naar de server.
Het is dus op zich erg simpel, maar je zou bijna niet geloven hoeveel tijd ik gespendeerd heb om tot deze conclusie te komen. Ik kan het nog altijd niet geloven als ik naar de simpelheid ervan kijk.
Hopelijk kan ik enkelen hiermee wat tijd besparen.
Preloader in Actionscript 3
Published by Ronny on May 11th, 2008 in Uncategorized. 3 comments
Gisteren vroeg iemand me hoe preloaders in AS3 werken. Door een ongelukkig toeval heb ik ooit vernomen van iemand dat het ’self-preloaden’ zoals we dat kennen uit Actionscript 2 niet meer zou kunnen met Actionscript 3. Ik heb dan ook nog maar 2 of 3 projecten online gezet in Actionscript 3, waar ik gewoon gebruik maakte van een preload.swf die de applicatie.swf inlaadde.
Dom van me dat ik dat blindelings geloofde, want toen mij die vraag gisteren gesteld werd, wou ik het toch wel zeker weten. Ik opende Flash, knalde een wallpaper van theFWA in frame 2 (zodat ik zeker weet dat er wat is om te preloaden), ging naar frame 1, en drukte op F1.
Na even zoeken werd het duidelijk.
De _root.bytesLoaded en _root.bytesTotal uit Actionscript 2 zijn wel degelijk weg, maar daarvoor niet ‘weggelaten’: Ze zijn verhuisd naar hun nieuwe (en meer logische thuis): this.loaderInfo.bytesTotal en this.loaderInfo.bytesLoaded.
Verder blijft de logica die je hanteert redelijk dezelfde.
Ik heb mijn .fla hier geplaatst voor de mensen die het eens volledig willen bekijken.
Ik vind de Actionscript 3 benadering van preloaden wel veel leuker, en makkelijker.
SWX is vanaf nu WEL een optie!
Published by Ronny on August 16th, 2007 in Actionscript, Flash, Open-source, PHP. No commentsAral Balkan heeft een tijdje geleden heel wat ophef bij mij bezorgd toen ik in zijn presentaties als ‘XML/SM – fan’ bestempeld werd. Ik kon er toen erg mee lachen omdat ik XML op zich best makkelijk vind.
Na mijn serververhuis van enkele dagen geleden heb ik deze blogpost van Aral Balkan gelezen, en gezien dat SWX blijkbaar kan gebruikt worden op bestaande PHP servers.
Ikzelf dacht altijd dat SWX een eigen server nodig had. Bijgevolg verwachtte ik niet dat SWX binnen korte tijd zou kunnen doorbreken.
Natuurlijk heb ik na dit ontdekken meteen de SWX files geüpload, en enkele testjes gedaan.
Aral had gelijk: XML haalt het inderdaad niet van SWX. (nog niet in ieder geval
)
Enkele links:
Download MAMP (PHP Development omgeving met SWX)
Download SWX PHP (PHP bestanden die SWX mogelijk maakt op eigen server)
SWX homepage

