POST请求不正确?

时间:2012-02-17 06:54:06

标签: flash flex post http-post

我正在尝试通过Flex中的POST请求加载xml:

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请求?

2 个答案:

答案 0 :(得分: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 :(得分:0)

将你的swf放在本地/远程服务器上,它应该发送一个POST请求。据我所知,Flash从本地文件系统发送GET(当你在浏览器中通过file://或从IDE打开html / swf时)