2009-11-12 124 views
0

正在调用默认页面的fla文件。但它无法找到默认页面..我的default.aspx页面位于根目录 中,我的fla文件位于../capture/image.fla中。这里是我的代码问题设置URLRequest路径

function onSaveJPG(e:Event):void{ 
    var myEncoder:JPGEncoder = new JPGEncoder(100); 
    var byteArray:ByteArray = myEncoder.encode(bitmapData); 

    var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream"); 

    var url:String = "../../default.aspx"; 

    var saveJPG:URLRequest = new URLRequest(url); 
    saveJPG.requestHeaders.push(header); 
    saveJPG.method = URLRequestMethod.POST; 
    saveJPG.data = byteArray; 



    var urlLoader:URLLoader = new URLLoader(); 
    urlLoader.addEventListener(Event.COMPLETE, sendComplete); 
    urlLoader.load(saveJPG); 

    function sendComplete(event:Event):void{ 
     warn.visible = true; 
     addChild(warn); 
     warn.addEventListener(MouseEvent.MOUSE_DOWN, warnDown); 
     warn.buttonMode = true; 
    } 

任何指针或建议如何在闪存中设置虚拟路径? 谢谢

回答

1

最安全的方法是使用绝对路径代替相对路径。 你的情况,你可以做

var url:String = "/default.aspx"; 

Flash会在SWF文件包含到HTML,所以如果你的Default.aspx也服务于闪存嵌入代码的相对路径将是“默认从点路径。 ASPX”

如果你想测试,同时从FLASH CS4出口,你将不得不使用一个完整的URL像

var url:String = "http://localhost/default.aspx" 

我通常包括这段代码,以使测试更加简单

import flash.system.Capabilities; 

    ... 
     var url:String = "/default.aspx"; 
     //test if playing in external player or in a browser 
     if(Capabilities.playerType == "External") { 
      url = "http://localhost"+url; 
     } 
    ... 
+0

跟踪(this.root.loaderInfo.loaderURL);给你的瑞士法郎的位置。 – Les 2009-11-12 11:18:33

1

检查使用此...

var url:String = "~/default.aspx";