So erstellen Sie eine Datei mithilfe von javascript in Mozilla Firefox
Ich möchte eine Funktion schreiben, die in javascript erstellt eine Datei, und schreiben Sie einige Inhalte, iam arbeiten Sie mit firefox, kann jemand mir helfen in diesem Fall.
Dank...
- Wieso der downvote?
- Ich antwortete auf die Frage, wenn man bedenkt es bezieht sich auf das anlegen der Datei in der client-Seite, auf die gleiche Weise TiddlyWiki hat. Einige Leute haben die entlassen, die Frage, wie Sie zu interpretieren, werden Sie gefragt, ob JavaScript erstellen können, Dateien in der server-Seite. Vielleicht solltest du klären.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie schreiben von Dateien in JavaScript in Firefox, aber Sie müssen verwenden Sie ein XPCOM-Objekt (interne browser-API). Dies ist nicht zulässig für JavaScript geladen von einer web-Seite, und es ist beabsichtigt, durch die JavaScript-Ausführung in einem Firefox-add-on (mit high-level-Privilegien).
Gibt es einen Weg für normale (web-Seite) JavaScript auf Anfrage weitere Privilegien, und wenn der Benutzer gewährt (es wird ein pop-up-Fenster um Erlaubnis bitten), die web-Seite code würde in der Lage sein, um eine Datei zu schreiben.
Aber bevor Sie weiterlesen, eine Warnung:
Dies ist kein standard JavaScript und ich würde nicht empfehlen, diesen Ansatz, es sei denn, Sie entwickeln eine sehr spezifische Anwendung, die verwendet werden in einer ganz bestimmten Art und Weise (wie zum Beispiel http://www.tiddlywiki.com/ eine client-side-JavaScript-HTML-nur wiki).
Anfordern XPCOM-Berechtigungen für eine website ist eine schlechte Praxis! Es ist im Grunde gleichwertig zum laufen ein .exe-Datei, die Sie gerade heruntergeladen von einer Website. Sie fordern einen Benutzer zu gewähren vollen Zugang zu Ihrem computer (Lesen, schreiben, ausführen) mit der Identität des Benutzers ausgeführt Firefox.
Antrag die Erlaubnis zu verwenden XPCOM (dieses fordert den Benutzer zur Bestätigung, keine Möglichkeit, es zu vermeiden):
Dann schreiben Sie in eine Datei mit ein XPCOM-Objekt (Beispiel-code aus dem Mozilla Developer Network):
Finden Sie weitere Informationen über I/O im Firefox mit XPCOM hier: https://developer.mozilla.org/en-US/docs/Code_snippets/File_I_O
Javascript von websites kann nicht auf das lokale Dateisystem zugreifen.
Wenn Sie möchten, um Daten zu speichern, entweder speichern auf dem server oder in einem cookie.
schreiben in das Dateisystem direkt aus dem browser verboten ist aus Sicherheitsgründen. Mit html5 aber es wird möglich sein, offline-storage-Unterstützung. Werfen Sie einen Blick hier.
Grz, Kris.
Javascript führt in einer client-side-Kontext.
http://www.tek-tips.com/viewthread.cfm?qid=1171273&page=1
Gibt es eine API für das.. File Writer-API. Die frühzeitige Spezifikation ist hier:
http://www.w3.org/TR/file-writer-api/
Es ist nicht implementiert, die in jedem browser noch.
Update: Es scheint, es existiert bereits eine Implementierung. Check-out http://caniuse.com/filesystem und http://www.html5rocks.com/en/tutorials/file/filesystem/
Während jeder, der geantwortet hat, dass javascript nicht die Möglichkeit zum schreiben von Dateien auf einem remote-server korrekt sind, und dies gilt aus Gründen der Sicherheit, was Sie erreichen wollen, ist vielleicht immer noch möglich.
Zum Beispiel, wenn Sie wollten, um es möglich zu machen, um erstellen Sie eine Datei auf Ihrer website mit dem Einsatz von javascript, können Sie dies mit einigen server-side-scripting-Sprache und und AJAX-call.
Beispiel:
Haben Sie eine Datei auf Ihrem server aufgerufen
update_last_access.php
erstellen eine Datei, welche das Letzte mal auf die Datei zugegriffen wurde, die in einer beliebigen Datei.Wenn Sie dann hatte Sie Ihre javascript-Funktion machen Sie einen AJAX-Aufruf aus, das Skript, zum Beispiel in jquery
Dann würde das ausführen der server-Seite Skript-und Schreibzugriff auf die Datei.
Bevor keiner mehr helfen kann, werden für Sie bereitgestellt, die Sie gehen zu müssen, um zu klären, was Sie zu tun versuchen.
Können Sie Lesen, Dateien aus dem Dateisystem in JavaScript mit Firefox 3.6 - siehe mein EPUB-reader proof-of-concept, zum Beispiel.
Können Sie nicht schreiben, Dateien direkt von JavaScript aus, obwohl. Sie haben zu gehen über einen server.
Mozilla plant FileSaver zu Gecko 9:
https://bugzilla.mozilla.org/show_bug.cgi?id=557540