AS3 POST请求作为GET发送

时间:2010-08-24 14:04:12

标签: actionscript-3 http

尝试向ASP.NET asmx Web服务发送POST请求时,我看到(在Charles和Firebug中)它作为GET进行。

这是我的AS3

public function save(page:SharedPageVO, callback :Function = null): void {
   var req:URLRequest = new URLRequest( "service.asmx/CreateSharedPage" );
   req.data = page;
   req.method = URLRequestMethod.POST;
   if (callback != null)
   {
    //handle removing the event here instead of there
    this.complete = callback;
    DataService.instance.addEventListener(Event.COMPLETE, onComplete);
   }
   DataService.instance.load( req );
}

public var complete:Function;
private function onComplete(e:Event)
{
 if (complete != null) complete(e);
 complete = null;
 DataService.instance.removeEventListener(onComplete);
}

这似乎是flash的一个问题,因为它甚至在它进入服务器之前就已经发生了。我已将其上传到测试服务器,我仍然认为它是作为GET实现的。任何帮助,将不胜感激。感谢。

1 个答案:

答案 0 :(得分:1)

来自actionscript LR(URLRequest类,方法属性):

注意:如果在Flash Player中运行且引用的表单没有正文,则Flash Player会自动使用GET操作,即使该方法设置为URLRequestMethod.POST也是如此。因此,建议始终包含“虚拟”主体,以确保使用正确的方法。

您使用的是“虚拟”身体吗?