Flash CS4中的URL打开错误

时间:2011-02-09 02:58:35

标签: actionscript-3 flash-cs4

我有一个脚本,可以为变量加载php页面。将swf上传到站点时没有问题,但是当我在本地运行它时,我不断收到“Error opening URL”消息。我正在使用绝对路径,如果我粘贴我的脚本在浏览器中使用的URL,则会打开正确的页面。这仅在站点更改服务器后才开始发生。任何想法可能是什么问题?感谢。

3 个答案:

答案 0 :(得分:2)

“打开错误网址”似乎是由许多问题引起的。我试图跟踪我过去用来解决问题的所有不同解决方案。有时我遇到“错误打开URL”解决方案是不同的。希望其中一个解决方案可以帮助您。

我通常在谷歌上找到以下解决方案。 - 确保正确设置了跨域策略。 - 设置一堆变量,如Security.allowDomain(domainHERE) - 更改Flash文件的发布设置。 - 确保连接到正确的URL。

这对我有用......通常。


1)确保您连接到正确的网址。 使用完整路径,不要使用相对链接。另外,在网络浏览器中复制并粘贴网址,看它是否连接。

您也可以使用flash.events.HTTPStatusEvent.HTTP_STATUS查看HTTP标头,但我建议您先查看解决方案5。更简单,更简单的方式。

来源http://www.judahfrangipane.com/blog/2007/02/15/error-2032-stream-error/


2)将crossdomain.xml文件放在服务器的根目录中(通常是public_html或www)

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>
    <allow-access-from domain="*"/>
</cross-domain-policy>

来源http://www.senocular.com/pub/adobe/crossdomain/policyfiles.html


3)编辑flash文件时,按 Ctrl + Shift + F12

确保Local playback security设置为Access Network Only


4)如果您使用MAMP,WAMP,XAMP或类似的东西在本地托管,请跳过此步骤。否则,请调用您的虚拟主机并对它们大喊大叫;)

我曾与godaddy,hostgator和liquidweb一起主持过。似乎所有这些都有某种防火墙设置阻止闪存访问你想要的文件。

给主人打电话,告诉他们你的问题并要求他们将你想要连接的文件列入白名单,你应该好好去。

记住,每次要连接到新文件时,都必须将其列入白名单。我总是忘记这一点,我花了3个小时才弄清楚为什么要更改我的文件名或者移动它会让一切都变得混乱。 :)


5)使用Charles Web Debugging Proxy Program收集一些重要信息。

我将把它分解为几步。

通常对我来说,“错误打开URL”是由于我正在尝试连接的网站上的编码问题。

  1. Open Charles
  2. 运行您的Flash文件
  3. 在Charles侧栏中选择您的Flash文件尝试连接的网站。
  4. 查看顶部附近的Response标签。
  5. 在“响应”选项卡上,您应该会在底部附近看到一些其他选项卡。查看Headers标签。

    • 查看返回的HTTP_Status。然后查看搜索this page以查看该状态代码的含义。它会给出一个有点宽泛的定义,但它仍然有助于缩小范围。
    • 500表示您的服务器出现问题...如果您的服务器运行正常,则很可能是代码问题。
  6. 然后查看“响应”标签底部附近的Text标签。这将准确显示该网页的闪存效果。如果您的服务器处于某种显示错误的调试模式,那么您将看到它们。

  7. 嗯,我希望这有助于某人。我将尝试继续使用我遇到的更多问题和解决方案来更新它。这可能是我遇到的首要问题。超级烦人!

答案 1 :(得分:0)

可能是Crossdomains.xml文件?

答案 2 :(得分:0)

不是真正的解决方案,而是一种解决方法:

在.fla上的CTRL-ENTER之前

,执行CTRL-S

这对我来说似乎有90%的时间可以工作

注意 :直到大约6个月前的一个随机日,我才遇到过这个问题。现在它困扰了我的大部分旧项目,cs4或cs6。