March 6, 2010
How to access query string arguments with AS3
Category: ActionScript, khadlock at 11:49 am
Found a great blog post with an ActionScript 2 class that parses the current URL and creates accessible properties out of query string arguments: http://blog.circlecube.com/2008/03/20/get-current-url-and-query-string-parameters-to-flash-tutorial/
I needed something to parse any URL, so I made a few adjustments and converted the class to AS3. Here's the updated code:
package { import flash.external.*; public class QueryString { private var _queryString:String; private var _all:String; private var _params:Object; public function QueryString(url:String='') { readQueryString(url); } public function get getQueryString():String { return _queryString; } public function get url():String { return _all; } public function get parameters():Object { return _params; } private function readQueryString(url:String=''):void { _params = new Object(); try { _all = (url.length > 0) ? url : ExternalInterface.call("window.location.href.toString"); _queryString = (url.length > 0) ? url.split("?")[1] : ExternalInterface.call("window.location.search.substring", 1); if(_queryString) { var allParams:Array = _queryString.split('&'); //var length:uint = params.length; for(var i:int=0, index=-1; i < allParams.length; i++) { var keyValuePair:String = allParams[i]; if((index = keyValuePair.indexOf("=")) > 0) { var paramKey:String = keyValuePair.substring(0,index); var paramValue:String = keyValuePair.substring(index+1); _params[paramKey] = paramValue; } } } } catch(e:Error) { trace("Some error occured. ExternalInterface doesn't work in Standalone player."); } } } }
Here's an example of how to use the updated version:
var myPath:QueryString = new QueryString("http://www.studiosedition.com/?page=articles"); trace(myPath.parameters.page);
It's as simple as passing a URL with a query string and then just use the parameters object to access the specific query argument, in this case we're accessing the page argument, which will give us a value of "articles".
October 26, 2009
MDM Zinc v2.5 Intrinsic Classes
Category: ActionScript, Tags: ActionScript 2, MDM Zinc, khadlock at 2:42 pm
I always misplace the URL to the Intrinsic classes for MDM Zinc, which are required by Flash when publishing AS2 classes that use the MDM library. So, I'm posting them here for myself and any
http://www.multidmedia.com/support/exchange/?action=detail&id=116
