2012-02-17 121 views
0

我试图加载通过POST请求的XML在Flex中:POST请求不正确?

var request:URLRequest = new URLRequest('res/unhasher.xml'); 
request.method = URLRequestMethod.POST; 
loader = new URLLoader(); 
loader.load(request); 

但在Firebug我看到我的文件通过GET加载。

请求头:

GET res/unhasher.xml HTTP/1.1 
Host: bla-bla-bla.com 
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3 
Accept-Encoding: gzip, deflate 
Connection: keep-alive 

我在做什么错?如何从Flash/Flex发出POST请求?

回答

4

你实际上没有发布任何数据,所以也许Flash会做一个GET。尝试添加一些测试数据,看看它是否工作:

var request:URLRequest = new URLRequest('res/unhasher.xml'); 
request.method = URLRequestMethod.POST; 
var data:URLVariables = new URLVariables(); 
data.test = "some data"; 
request.data = data;  
loader = new URLLoader(); 
loader.load(request); 
+1

POST喜欢URLVariables。 + 1up – ToddBFisher 2012-02-17 07:07:20

+0

工作就像一个魅力!谢谢。 – moropus 2012-02-17 07:15:59

0

把你的瑞士法郎在本地/远程服务器,它应该发送一个POST请求。据我所知,Flash从本地文件系统发送GET(无论是在浏览器中通过file://还是从IDE中打开html/swf)

+0

不,这个输出是来自网站。 – moropus 2012-02-17 07:05:45