Actionscript 3 URLLoader.load POST上的Flash AS3-获取http状态=0且无数据。在flashide中工作

Actionscript 3 URLLoader.load POST上的Flash AS3-获取http状态=0且无数据。在flashide中工作,actionscript-3,flash,http-status-codes,ioerror,Actionscript 3,Flash,Http Status Codes,Ioerror,我正在使用urlload.load(urlRquest)进行rest调用 也 当我在Flash IDE中进行调用时,当出现错误时,我会得到HTTPStatusEvent.status=400(或其他值)。并且IOErrorEvent.data包含xml(有时是字符串) 但是,当我在浏览器(Firefox Mac或PC)中运行swf时,HTTPStatusEvent.status=0,以及IOErrorEvent.data为空。(有趣的是,在Safari Mac中,我确实获得了400状态,但仍然没

我正在使用
urlload.load(urlRquest)
进行rest调用

当我在Flash IDE中进行调用时,当出现错误时,我会得到HTTPStatusEvent.status=400(或其他值)。并且IOErrorEvent.data包含xml(有时是字符串)

但是,当我在浏览器(Firefox Mac或PC)中运行swf时,
HTTPStatusEvent.status=0
,以及
IOErrorEvent.data
为空。(有趣的是,在Safari Mac中,我确实获得了400状态,但仍然没有数据。)


对可能发生的事情有什么想法吗?(我需要我的错误!)

当您在Flash中运行swf时,
安全性。sandboxType
属性为localTrusted,这将导致完全授予外部访问权限。但当您在浏览器中运行它时,它似乎是localWith…

尝试执行以下操作:

1) 使用
-使用network=true编译它

[补充]

在Flash中,该设置位于“发布设置”下的Flash选项卡。名称为“本地播放安全”。所以,在发布swf之前,需要将其设置为“仅访问网络”

在发布swf文件后,您还可以使用Adobe的浏览器切换swf文件的“-use network”标志

[/添加]

2) 在HTML包装中提供对网络的访问

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100" height="100">  
  <param name="allowNetworking" value="all">  
  <param name="movie" value="moviename.swf">  
  <param name="quality" value="high">  
   <embed src="moviename.swf" width="100" height="100" quality="high"></embed>  
</object>


希望这能有所帮助。

在Firefox中运行swf将始终生成一个0,因为Firefox不会将状态代码传递给flash播放器,根据

检查跨域或沙盒设置。。。我不知道他们是否对这个问题负责,但大多数情况下他们是。您是否也在侦听SecurityErrorEvent.SECURITY\u ERROR
?SecurityErrorEvent.SECURITY\u ERROR是个好主意,但不幸的是没有发生任何安全错误。但我将再次检查是否为该服务器设置了跨域文件。有趣的是,调用成功时会出现urlloader数据。我们做了更多的测试。首先,跨域文件是正确的。如果服务返回200状态而不是错误状态,则有效负载(数据)确实通过了。@Daniel B,您需要根据我的回答更新发布设置。
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100" height="100">  
  <param name="allowNetworking" value="all">  
  <param name="movie" value="moviename.swf">  
  <param name="quality" value="high">  
   <embed src="moviename.swf" width="100" height="100" quality="high"></embed>  
</object>