2010-10-16 16 views
8

Ho bisogno di creare un file temporaneo per memorizzare le impostazioni utente sul lato client. È possibile creare un semplice file di registro utilizzando JavaScript?Come posso creare un file per l'archiviazione sul lato client con JavaScript?

+0

Non lo penserei. Potresti farlo parlare tramite una sorta di plug-in che potrebbe avere accesso al disco del client. Perché vuoi un registro sul lato client, però? Credo che sia estremamente insolito. –

+0

dove creerai questo logfile? da parte dei clienti cosa intendi esattamente? normalmente questo non è possibile !!! – zod

risposta

6

Hai alcune opzioni:

  • Cookies
  • localStorage
  • datab ase

controllare questo link:

Creazione di un file è possibile solo in IE utilizzando gli oggetti ActiveX.

+0

+1 per l'archiviazione locale. – casablanca

2

Se si desidera memorizzare le impostazioni utente, è dovrebbe:

  1. usa cookie
  2. archivio di informazioni client sul server

La possibilità per una pagina web per l'accesso il disco rigido di un individuo sarebbe pericoloso. Tuttavia, come Trey ha sottolineato di seguito, è possibile utilizzare:

+0

Ci sono alcune altre opzioni per l'archiviazione delle informazioni sul lato client (ad esempio l'archiviazione HTML5), ma i cookie sono la scelta più ragionevole. Evercookie utilizza molti metodi di archiviazione alternativi: http://samy.pl/evercookie/ –

+0

Punto valido e vale la pena menzionare la risposta modificata. È un'alternativa molto migliore rispetto all'UST. – vol7ron

-1

Prova questa comunque

var fso = new ActiveXObject("Scripting.FileSystemObject"); 
varFileObject = fso.OpenTextFile("C:\\Sachin.txt", 2, true,0); // 2=overwrite, true=create if not exist, 0 = ASCII 
varFileObject.write("File handling in Javascript"); 
varFileObject.close(); 

http://www.codeproject.com/KB/scripting/JavaScript__File_Handling.aspx

ma io non penso che si debba fare questo tipo di esperimenti. È possibile creare e fare molte manipolazioni di file usando i linguaggi lato server. È meglio

+8

Non sarebbe solo Windows/IE? – vol7ron

2

Se si può vivere con l'utente che deve memorizzare attivamente il file, Downloadify consente di generare un "download" lato client al volo.

0

Una biblioteca che consente di creare un il file di testo semplice (o un file di immagine o un file di testo RTF) sul lato client per il download è FileSaver.js.

1

Non puoi! Ciò viola i protocolli di sicurezza del browser.

Si suppone che tutto il codice lato client in un browser (HTML/CSS/Java-Script) venga eseguito all'interno di una sandbox di sicurezza. Non appena si chiude la sessione del browser, questa sandbox viene distrutta. Questa sandbox protegge il tuo filesystem locale da attacchi malevoli.

Idealmente, se tu fossi in grado di farlo, quindi, semplicemente sfogliando vari link, quei siti dovrebbero essere in grado di scrivere virus sul tuo sistema mentre lo fai !!

Problemi correlati