So erstellen Sie eine Datei mit Javascript in Mozilla Firefox

8

Ich möchte eine Funktion in Javascript schreiben, die eine Datei erstellt und etwas Inhalt darauf schreibt, iam arbeitet mit Firefox, kann mir jemand in diesem Fall helfen.

Danke ...

    
minu 18.06.2010, 07:10
quelle

8 Antworten

4

Sie können Dateien in JavaScript in Firefox schreiben, aber Sie müssen ein XPCOM-Objekt (interne Browser-API) verwenden. Dies ist nicht zulässig für JavaScript, das von einer Webseite geladen wird. Es ist dafür vorgesehen, dass JavaScript innerhalb eines Firefox-Add-Ons ausgeführt wird (mit vielen Privilegien).

Es gibt eine Möglichkeit für unprivilegiertes (Webseiten-) JavaScript, mehr Privilegien anzufordern, und wenn der Benutzer es gewährt (es wird ein Popup-Dialog geben, der um Erlaubnis bittet), könnte der Webseitencode in eine Datei schreiben.

Aber bevor Sie weiterlesen, eine Warnung:

Dies ist kein Standard-JavaScript und ich würde diesen Ansatz nicht empfehlen, es sei denn, Sie entwickeln eine sehr spezifische Anwendung, die auf sehr spezifische Weise verwendet wird (wie zum Beispiel Ссылка ein clientseitiges JavaScript-HTML-only-Wiki).

Das Anfordern von XPCOM-Privilegien auf einer Website ist eine schlechte Übung! Dies entspricht im Wesentlichen dem Ausführen einer .exe, die Sie gerade von einer Site heruntergeladen haben. Sie bitten einen Benutzer, vollen Zugriff auf seinen Computer (Lesen, Schreiben, Ausführen) mit der Identität des Benutzers zu gewähren, der Firefox ausführt.

Berechtigung zum Verwenden von XPCOM anfordern (dies wird den Benutzer zur Bestätigung auffordern, keine Möglichkeit, dies zu vermeiden):

%Vor%

Schreiben Sie dann mit einem XPCOM-Objekt in eine Datei (Beispielcode vom Mozilla Developer Network):

%Vor%

Sie können weitere Informationen über I / O in Firefox mit XPCOM finden Sie hier: Ссылка

    
flpmor 18.06.2010 20:58
quelle
3

Javascript von Webseiten kann nicht auf das lokale Dateisystem zugreifen.

Wenn Sie Daten speichern möchten, speichern Sie sie entweder auf dem Server oder in einem Cookie.

    
Stefan Lundström 18.06.2010 07:16
quelle
2

Das direkte Schreiben aus dem Browser in das Dateisystem ist aus Sicherheitsgründen verboten. Mit html5 wird es möglich sein, Offline-Speicher-Unterstützung zu haben. Schauen Sie hier .

Grz, Kris.

    
XIII 18.06.2010 07:16
quelle
1

Javascript wird in einem clientseitigen Kontext ausgeführt.

Ссылка

    
Alex 18.06.2010 07:12
quelle
1

Es wird eine API für diese .. File Writer API geben. Die frühe Spezifikation ist hier: Ссылка Es ist noch nicht in einem Browser implementiert.

Update: Es scheint, dass es bereits eine Implementierung gibt. Schauen Sie sich Ссылка und Ссылка an

    
silviubogan 21.06.2010 14:19
quelle
0

Während alle, die geantwortet haben, dass Javascript nicht die Fähigkeit hat, Dateien auf einem entfernten Server zu schreiben, korrekt sind, und dies aus Sicherheitsgründen gilt, ist das, was Sie erreichen möchten, immer noch möglich.

Wenn Sie beispielsweise die Erstellung einer Datei auf Ihrer Website mithilfe von JavaScript ermöglichen möchten, können Sie dies mit einer serverseitigen Skriptsprache und einem AJAX-Aufruf tun.

Beispiel:

Sie haben auf Ihrem Server eine Datei namens update_last_access.php , die eine Datei erstellt, die den letzten Zugriff auf die Datei in einer beliebigen Datei speichert.

Wenn Sie dann Ihre Javascript-Funktion hatten, machen Sie einen AJAX-Aufruf an dieses Skript, zum Beispiel in jquery

%Vor%

Dann würde dies das serverseitige Skript ausführen und in die Datei schreiben.

Bevor weitere Hilfe für Sie bereitgestellt werden kann, müssen Sie klären, was Sie zu tun versuchen.

    
Jamie Wong 18.06.2010 07:28
quelle
0

Sie können Dateien aus dem Dateisystem in JavaScript mit Firefox 3.6 lesen - siehe zum Beispiel meinen EPUB-Reader-Konzeptnachweis .

Sie können Dateien jedoch nicht direkt aus JavaScript schreiben. Sie müssen über einen Server gehen.

    
August Lilleaas 18.06.2010 07:31
quelle
0

Mozilla plant, FileSaver zu Gecko 9 hinzuzufügen: Ссылка

    
unxed 30.10.2011 10:07
quelle

Tags und Links