File Download mit AS3

Es gibt einige Beispiele dafür, wie man eine Datei aus Flex heraus zum Download anbietet. Allerdings gibt es dabei zwei Dinge zu beachten: Das FileReference-Objekt darf nicht innerhalb der Funktion instanziiert werden, in der der Download startet. Das Objekt ist dann nicht persistent und verschwindet wieder. Daher ist es wichtig, das Objekt direkt in der Klasse zu Deklarieren und zu instanziieren:

public var fileRef:FileReference = new FileReference();

Zweitens muss man beachten, dass aufgrund der geänderten Sicherheitsrichtlinien der Dateidownload nur als Folge einer Benutzerinteraktion gestartet werden kann – z.B. einem Click.
In beiden Fällen werden keine Fehler ausgegeben, es funktioniert nur einfach nicht.

Es ist ohne weiteres möglich, eine Datei zum Download anzubieten, die von PHP erstellt wird. Dabei habe ich herausgefunden, dass z.B. der Header “Content-Type” nicht gesetzt werden darf. Vielmehr wird der generierte Inhalt direkt an den Browser gesendet. Erlaubte Header sind z.B.:

header(“Content-Transfer-Encoding: binary”);
header(“Cache-Control: no-cache, must-revalidate, max-age=60”);
header(“Expires: Sat, 01 Jan 2000 12:00:00 GMT”);
print($content);

Kommentare sind geschlossen.