日期:2014-05-17  浏览次数:20676 次

Flex URLRequest Url长度问题
public function getJPGByteArray(target:UIComponent):ByteArray {  
            var bitmapData : BitmapData = new BitmapData(target.width, target.height);  
            bitmapData.draw(target);   
              
            var jpg : JPGEncoder = new JPGEncoder();  
            var jpgByteArray : ByteArray = jpg.encode(bitmapData);  
            return jpgByteArray;  
        }  
          
        public function sendImageByte(target:UIComponent):void {
         var urlStr:String="/yffb/System/Login/toWord?out_fileName=lineChart&fn=总体走势判断模块&content="+(model.warmessage);
         trace(encodeURIComponent("--------------------------"+model.warmessage));
            var request:URLRequest = new URLRequest(encodeURI(urlStr));  
            request.contentType = 'applicatoin/octet-stream';  
        request.data = getJPGByteArray(target);  
            request.method = URLRequestMethod.POST;  
            navigateToURL(request, "_blank");  
 
        }


只要model.warmessage数据过长就会导致整个url长度太长从而没法进入方法。
理应
            var variables:URLVariables = new URLVariables();
            variables.content =model.warmessage;
            request.data = variables;
能解决这个问题。

不过。request.data = getJPGByteArray(target); 
 这个用于组件截图保存至本地。....这代码也是网上找来的。其地址是:http://www.360doc.com/content/11/0906/13/7622754_146181779.shtml

不知如何能将content参数不跟在url上提交。。往大神相助、。