我正在设置本地SWF文件,必须在某些动态文本中显示从远程Web服务器检索到的 JSON 数据领域。 代码:
Security.allowDomain("api.yourserver.com");
var loader:URLLoader = new URLLoader();
var request:URLRequest = new URLRequest("http://api.yourserver.com/yourendpoint");
request.method = URLRequestMethod.GET;
request.contentType = "application/json";
loader.load(request);
loader.addEventListener(Event.COMPLETE, decodeJSON);
function decodeJSON(event:Event):void{
var loader:URLLoader = URLLoader(event.target);
var Info:Object = JSON.parse(loader.data);
cont.textfield1.text = Info.text.field1;
cont.textfield2.text = Info.text.field2;
cont.textfield3.text = Info.text.field3;
}
控制>测试 - 它的工作原理。独立运行时不会。我收到了2028错误(沙箱违规)。
我尝试了什么:
任何能够克服这一点并愿意解释如何或至少指向正确方向的人?
提前致谢!
答案 0 :(得分:1)
我认为您当前发布的文件只是评估本地文件而不是网络文件,这就是您遇到安全#2028
错误的原因。
为避免这种情况,您可以将已发布的swf的Local playback security
从Publish Settings
更改为Access network only
:
如果您在本地测试时仍然遇到安全错误(例如#2048错误),请查看my answer of this question以将您的本地swf文件添加到受信任位置...
希望可以提供帮助。