出现2032错误(仅在一台机器上)

时间:2010-07-21 18:08:01

标签: flex air

我刚刚建立了一个AIR应用程序。其中一个用户今天得到了一台新机器(XP)并且在应用程序尝试通过HTTPService发送/接收数据时不断收到2032错误我在网络浏览器中访问时验证了此页面是否有效。它也适用于其他计算机上的AIR应用程序。页面和AIR应用程序几个月没有更改,唯一改变的是这个特定的用户计算机。我重新编译以获得更具体的错误,这就是我得到的:

(mx.messaging.messages::ErrorMessage)#0
  body = ""
  clientId = "DirectHTTPChannel0"
  correlationId = "B38588EC-AEA0-84F0-F5B2-F6B6AB6C3456"
  destination = ""
  extendedData = (null)
  faultCode = "Server.Error.Request"
  faultDetail = "Error: [IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2032" errorID=2032]. URL: https://www.example.com/mypage.php"
  faultString = "HTTP request error"
  headers = (Object)#1
    DSStatusCode = 0
  messageId = "2BC38D14-63DD-345E-50DD-F6B6AEE75438"
  rootCause = (flash.events::IOErrorEvent)#2
    bubbles = false
    cancelable = false
    currentTarget = (flash.net::URLLoader)#3
      bytesLoaded = 0
      bytesTotal = 0
      data = ""
      dataFormat = "text"
    errorID = 2032
    eventPhase = 2
    target = (flash.net::URLLoader)#3
    text = "Error #2032"
    type = "ioError"
  timestamp = 0
  timeToLive = 0

当我写这篇文章时,我让用户重新启动并重新启动应用程序,它现在正在工作,所以我并不太担心,但我仍然很好奇如果有人有任何想法可能会发生什么?

更新

今天(第二天)它再次发生,重启甚至没有修复它今天。它必须是她的机器干扰导致问题,因为我可以在任何其他机器上运行该程序,没有问题。不知道它可能是什么或如何排除故障?

2 个答案:

答案 0 :(得分:0)

那时服务器是否打嗝,即停机时间和/或宇宙射线?使用服务器上的apache access / error.log交叉引用用户访问时间。 crossdomain.xml是否更改了程序引用的任何位置?

答案 1 :(得分:0)

我在这里有一些相同的问题,但有一个Flash(Web - Flex 4.1 SDK)应用程序。 在尝试了各种各样的解决方案后,我们终于找到了一个可靠的系统,包括新安装的机器。

<强> A 即可。在flex preinitialize阶段,在应用程序的根(或阶段)添加全局事件侦听器。

IOErrorEvent.IO_ERROR
IOErrorEvent.NETWORK_ERROR
HTTPStatusEvent.HTTP_STATUS
ErrorEvent.ERROR
SecurityErrorEvent.SECURITY_ERROR

如果错误是正确的 - event.preventDefault();

<强>乙即可。在App中使用的每个加载器上添加事件侦听器,以获取以下错误:

IOErrorEvent.IO_ERROR
SecurityErrorEvent.SECURITY_ERROR
HTTPStatusEvent.HTTP_STATUS

*尝试恢复,就像回到外部接口调用...

<强> C 即可。将bin-release文件夹中的所有SWZ文件与SWF文件一起放在用于交付应用程序的服务器上的相同路径中。 在我的情况下,这些是所需的文件:

sparkskins_4.5.1.21328.swz
spark_4.5.1.21328.swz
textLayout_2.0.0.232.swz
rpc_4.5.1.21328.swz
osmf_1.0.0.16316.swz
framework_4.5.1.21328.swz

*发现这一点,我使用Chrome开发者控制台查看页面上发生的错误,并在应用尝试下载这些文件时发现了404链。

<强> d 即可。有一个正确配置的crossdomain.xml策略文件,其中包含allow http request xml标记。

<allow-http-request-headers-from domain="*" headers="*"/>

在您的特定情况下根据需要更换*。

干杯