flash SecurityError: 错误 #2028: Local-with-filesystem SWF 文件

Posted

技术标签:

【中文标题】flash SecurityError: 错误 #2028: Local-with-filesystem SWF 文件【英文标题】:flash SecurityError: Error #2028: Local-with-filesystem SWF file 【发布时间】:2012-06-30 12:52:21 【问题描述】:

您好,我的 Flash 应用程序在尝试与 Internet 通信时出现错误 2028 与 Flash ide 一起工作正常。但是当我用 Flash 播放器运行 swf 文件时 首先我收到有关不安全操作的警告,然后我继续并收到 SecurityError: Error #2028: Local-with-filesystem SWF file file:///C|/Users.... 错误

我知道如何在本地解决这个问题,但我需要它在任何地方都可以工作,而不仅仅是在我的本地 我不会将我的 swf 上传到任何服务器,我只想将其复制到闪存驱动器中并在我想要的任何地方工作

我将 crossdomain.xml 与 swf 放在相同的目录中,并添加了这两行:(也导入了)

Security.allowDomain("*");
Security.loadPolicyFile("crossdomain.xml");

但没有任何改变

我的 crossdomain.xml:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">    
<cross-domain-policy>  
<allow-access-from domain="*" />    
</cross-domain-policy>

请帮忙

【问题讨论】:

您想从计算机本地运行还是在网络上的服务器上运行? 我想要它在本地,但不只是我的电脑,任何本地的电脑 Security.loadPolicyFile 应该引用完整的绝对 Web 位置。这个想法是它要求您的服务器允许开始挖掘和拉下资产。使策略文件引用相对没有任何意义,因为您可能对运行 SWF 的任何计算机拥有完全权限... 【参考方案1】:

您是否考虑将您的应用程序包装为air

【讨论】:

【参考方案2】:

如果您使用 Flash 进行编译,请尝试在 Flash(.swf) 发布设置中将本地播放安全设置为仅访问本地文件

如果您使用 FlexSDK(带或不带任何 IDE),则需要将 -use-network 编译器标志设置为 false

-use-network=false

您可以阅读有关不同安全沙箱的更多信息here。

【讨论】:

以上是关于flash SecurityError: 错误 #2028: Local-with-filesystem SWF 文件的主要内容,如果未能解决你的问题,请参考以下文章

SecurityError:错误 #2148:SWF 文件文件

Flash ActionScript 3 运行时安全错误

Quickblox Javascript SDK + Angular + webRTC - Firefox 错误:SecurityError:操作不安全

Flutter webview:ssl_client_socket_impl 和 Uncaught SecurityError 错误

Jest SecurityError:localStorage 不适用于不透明的来源

SecurityError:replaceState 无法将历史记录更新为在路径、查询或片段以外的组件中不同的 URL