Blog
AS3 System.useCodePage affects URLVariables encoding
8 years ago Posted in: Blog Comments Off

I've been struggling today with encoding.

It seems that System.useCodePage affects the encoding of URLVariables during a URLRequest

Actionscript:
  1. package {
  2.     import flash.display.Sprite;
  3.     import flash.events.Event;
  4.     import flash.events.IOErrorEvent;
  5.     import flash.events.SecurityErrorEvent;
  6.     import flash.net.URLLoader;
  7.     import flash.net.URLRequest;
  8.     import flash.net.URLRequestMethod;
  9.     import flash.net.URLVariables;
  10.     import flash.system.System;
  11.  
  12.     /**
  13.      * @author Matteo Monti
  14.      */
  15.     public class Main extends Sprite {
  16.         public function Main() {
  17.            
  18.             System.useCodePage = true;
  19.             send();
  20.             System.useCodePage = false;
  21.             send();
  22.  
  23.         }
  24.        
  25.         private function send() : void {
  26.             trace("send System.useCodePage: " + System.useCodePage);
  27.            
  28.             // setup variables
  29.             var urlvar : URLVariables = new URLVariables();
  30.                 urlvar.somedata = "Ñoña çáà System.useCodePage: " + System.useCodePage;
  31.                
  32.                 // instance request
  33.                 var request : URLRequest = new URLRequest();
  34.                     request.url = "http://www.myserver.com/service";
  35.                     request.data = urlvar;
  36.                     request.method = URLRequestMethod.GET;
  37.                    
  38.                 // instance urlloader      
  39.                 var loader : URLLoader = new URLLoader();
  40.                     loader.addEventListener(Event.COMPLETE, onResponse);
  41.                     loader.addEventListener(IOErrorEvent.IO_ERROR, onXMLIoErrorHandler);               
  42.                     loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityErrorHandler);     
  43.                     loader.load(request);         
  44.         }
  45.        
  46.         private function onSecurityErrorHandler(event : SecurityErrorEvent) : void {
  47.             trace("onSecurityErrorHandler");
  48.         }
  49.  
  50.         private function onXMLIoErrorHandler(event : IOErrorEvent) : void {
  51.             trace("onXMLIoErrorHandler");
  52.         }
  53.  
  54.         private function onResponse(event : Event) : void {
  55.             trace("onResponse System.useCodePage: " + System.useCodePage);
  56.             trace(event.target.data);
  57.         }
  58.  
  59.  
  60.     }
  61. }

Comments are closed.

Image compression on this page is provided by WordPress Image Compressor