2012-02-01 23 views
6

Próbuję zapisać lokalny plik Flash Player 10+ przy użyciu klasy FileReference, zgodnie z formatem z tego wpisu na blogu Mike Chambers : http://www.mikechambers.com/blog/2008/08/20/reading-and-writing-local-files-in-flash-player-10/Nie mogę zapisywać lokalnych plików w Flash Player 10+ online (ale działa, gdy jest używany lokalnie)

Zasadniczo kod jest taka:

private function onSaveButtonClick(event:MouseEvent):void{  
    fr = new FileReference(); 
    fr.save(fileToSave);} 

współpracuje lokalnie na moim komputerze, ale kiedy jest stosowany w Internecie, to nie wywołać dialog zapisać plik po naciśnięciu przycisku zapisać kliknięciu. Zakładam, że jest to jakiś rodzaj pozwoleń lub problem związany z bezpieczeństwem?

+0

Czy masz przykład działający na serwerze? Nie ma nic, co wiem, ogranicza FileReference.save podczas wykonywania z serwera, więc działający przykład byłby pomocny. – JimmiTh

+0

Działa po uruchomieniu go na serwerze localhost, ale nie na moim serwerze online – Steven

+0

Co to jest 'fileToSave'? Wykonaj 'onFileSave',' onCancel' lub 'onSaveError' trace anything – Eugeny89

Odpowiedz

0

Twoje wystąpienie FileReference może być zbiorem śmieci. To samo dzieje się z przesyłaniem plików.

Spróbuj przenieść go do zmiennej instancji:

private var fr = new FileReference(); 
private function onSaveButtonClick(event:MouseEvent):void{  

    fr.save(fileToSave); 
} 
1

Należy sprawdzić dziennik dla SecurityError s. Naruszenie sandbox jest prawie zawsze przyczyną, gdy IO działa lokalnie, ale nie online.