Usare file .json come database locale

di il
2 risposte

Usare file .json come database locale

Buonasera a tutti,

premetto che sono alle prime armi per quanto riguarda il backend, se così possiamo definirlo;

sto realizzando una web application stand-alone (offline, che funzioni anche non hostata, semplicemente lanciando il file html o php che sia) e avrei la necessità di contenere in un file a parte dei dati che la mia app deve leggere, modificare e salvare, tutto attraverso un'interfaccia grafica in modo che al lancio successivo dell'app i dati siano aggiornati.

Per le mie esigenze sinceramente non mi sembra comodo utilizzare un database, seppur locale, per gestire questi dati. Per questo motivo mi chiedevo se potesse essere possibile utilizzare un file .json come una sorta di database, con il quale il mio programma interagisce. 

Potrei anche gestirmela con un semplice file di testo, ma a quel punto mi servirebbe creare un criterio particolare di scrittura, per questo sarebbe comodo il json, dato che i dati da gestire presentano diversi annidamenti.

Qualcuno sa se è possibile gestire questa situazione client-side? Senza ausilio di php o simili?

Grazie in anticipo.

2 Risposte

  • Re: Usare file .json come database locale

    24/01/2023 - enrico.php ha scritto:


    Qualcuno sa se è possibile gestire questa situazione client-side? Senza ausilio di php o simili?

    Sicuramente un file JSON non è ottimale se deve fare le funzioni di un database, questo perché a ogni più piccolo aggiornamento dei dati che contiene, devi riscrivere l'intero file. Inoltre, non ti fornisce alcun supporto a ricerche o a quelle operazioni tipiche che ci si aspetta appunto da un database, qualunque esso sia.

    Detto questo, se il volume delle informazioni da salvare all'interno è particolarmente limitato, come “surrogato” direi che potrebbe andare, purché tu sia conscio di tutti i suoi limiti, inclusi quelli indicati sopra.

    Quando invece parli di usarlo “client-side”, immagino che tu voglia salvare quel JSON sulla macchina dell'utente… se stiamo parlando di JavaScript all'interno del browser, ovviamente non hai alcuna possibilità di andare scrivere file in percorsi a tua scelta: gli unici strumenti che hai a disposizione possono essere l'uso dei cookie (ma lo vedo molto limitato) oppure il Local/Session Storage, oppure IndexedDB (vedi questo tutorial per approfondimento).

    Va da sé che qualsiasi strumento fra quelli proposti è sotto il controllo dell'utente: se decide di eliminare i file temporanei dal browser, perderà anche tutti i dati che hai salvato.

  • Re: Usare file .json come database locale

    24/01/2023 - enrico.php ha scritto:


    sto realizzando una web application stand-alone (offline, che funzioni anche non hostata, semplicemente lanciando il file html o php che sia) 

    Non mi sono chiare le informazioni: parli di file html o di php? 

    Non vedo come tu possa usare PHP senza avere la parte server della tua applicazione. Se ricordo bene PHP lavora come ASP, ovvero sono pagine che il server elabora prima di mandare il risultato al client.

    Per cui, se usi php, credo sia più comodo usare un database. Poi se non vuoi installare un motore “completo” come Sql Server, MySQL, .. puoi usare dei database in-process che hanno delle limitazioni ma per scenari piccoli vanno benissimo.

    Facci sapere, così magari indirizziamo meglio anche i suggerimenti

Devi accedere o registrarti per scrivere nel forum
2 risposte