Can';t在Flash Player 10中写入本地文件+;在线(但在本地使用时有效)
我正试图使用FileReference类使用Flash Player 10+编写一个本地文件,格式如下,摘自Mike Chambers的这篇博文: 基本上,代码是这样的:Can';t在Flash Player 10中写入本地文件+;在线(但在本地使用时有效),flash,savefiledialog,filereference,Flash,Savefiledialog,Filereference,我正试图使用FileReference类使用Flash Player 10+编写一个本地文件,格式如下,摘自Mike Chambers的这篇博文: 基本上,代码是这样的: private function onSaveButtonClick(event:MouseEvent):void{ fr = new FileReference(); fr.save(fileToSave);} 它在我的机器上本地运行良好,但当联机使用时,单击“保存”按钮时不会显示“保存文件”对
private function onSaveButtonClick(event:MouseEvent):void{
fr = new FileReference();
fr.save(fileToSave);}
它在我的机器上本地运行良好,但当联机使用时,单击“保存”按钮时不会显示“保存文件”对话框。我假设这是某种权限或安全相关的问题?您的FileReference实例可能被垃圾收集。文件上传也会发生同样的情况
尝试将其移动到实例变量:
private var fr = new FileReference();
private function onSaveButtonClick(event:MouseEvent):void{
fr.save(fileToSave);
}
您应该检查日志中的
SecurityError
s。当IO在本地工作但不在线时,沙箱冲突几乎总是原因。您有在服务器上运行的示例吗?据我所知,在从服务器执行时,没有任何限制FileReference.save的内容,因此运行示例会有所帮助。当我在本地主机服务器上运行FileReference.save时,它会起作用,但在联机服务器上运行FileReference.save时则不会起作用?执行onFileSave
,onCancel
或onSaveError
跟踪anything@Eugeny89我对它进行了更多的调试,看起来它实际上是一个跨域闪存安全问题,涉及从S3获取图像以创建位图。我在上创建了一个新问题