使用 AS3 在本地加载 XML
我在 Flash Builder
中有一个项目,我使用 Bulkloader
加载一些配置文件。当我从 Flash Builder 或服务器中运行项目时,一切都按预期运行,但是当我从其他位置(例如“我的文档”)运行 SWF 时,项目无法加载 XML。
我不确定这是否是安全问题或类似问题。
提前致谢!
I have a project in Flash Builder
and I use Bulkloader
to load some configuration files. When I run the project from Flash Builder or in a server, everything works as expected, but when I run the SWF from another location (for example "my documents"), the project can't load the XML.
I'm not sure if this is a security problem or something similar.
Thanks in advance!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要使用此设置管理器来添加位置您的 SWF 可以安全地从中访问数据。
它最终应该看起来像这样:
使用添加位置功能添加我的文档文件夹所在的驱动器。
You need to use this settings manager to add locations that are safe for your SWF to access data from.
It should end up looking something like this:
Use the Add location feature to add the drive that your My Documents folder is contained within.
假设您正在开发
WebApplication
而不是AIR
桌面应用程序,则您可以访问网络文件或本地文件,但不能同时访问两者。当您从 FlashBuilder 运行时,您的程序是从 SandBox 执行的,这样的限制将不适用,但是当您在外部部署时,您将收到安全错误。如果您的应用程序不需要使用任何网络功能,您可以将
use-network=false
指定为编译器选项的一部分,这将允许您访问本地文件。要添加/更改编译器选项,请在 Flash Builder 中右键单击您的项目,选择“属性”,然后选择“Flex 编译器”,然后在“其他编译器参数”中输入该选项。 (我使用的是 Flex Builder 3,因此您使用的 Flash Builder 上的情况可能会有所不同)
Flex 编译器选项
Assuming that you are developing a
WebApplication
and not anAIR
desktop application, you are allowed to access either network files or local files, but not the both of them. When you run from FlashBuilder, your program is executing from a SandBox and such restrictions won't apply, how ever when you deploy outside, you will get a security error.If your application does not need to use any network features, you can specify
use-network=false
as part of the compiler options which will allow you to access local files.To add/change Compiler options, Right click on your project in Flash Builder, select Properties, then Flex Compiler, and enter the option in Additional Compiler arguments. (I am using Flex Builder 3, so it might be different on the Flash Builder that you are using)
Flex Compiler Options