Pergunta

Eu desenvolvi uma extensão que cria um monte * de dados durante uma sessão de navegação. Pense, 2 a 3 vezes o tráfego total HTTP (imagens, HTML, etc.).

Atualmente eu estou apenas stashing tudo isso em uma variável Javascript, mas isso obviamente não é sustentável se a extensão está indo para obter qualquer uso sério.

Assim, a pergunta é, onde devo guardar esses dados? É muito raramente acessado, mas quando é todo ele é. Além disso, seria bom se os dados não persistem além da sessão atual; dados obsoletos é inútil neste caso, e eu prefiro não encher-se de disco desnecessariamente.

* Para algo em execução em um navegador, em Javascript

Foi útil?

Solução

Uma solução bastante normal é usar arquivos locais como armazenamento. Código executado como uma extensão do Firefox tem privilégios suficientes para ler e escrever arquivos locais. O href="https://developer.mozilla.org/en/Code_snippets/File_I%2F%2FO" rel="nofollow noreferrer"> página é uma muito boa partida ponto para compreender e implementar isso em sua extensão. Ele também mostra como encontrar da sua extensão diretório e ilustra o mecanismo para criando ficheiros temporários .

Estas abordagens devem dar-lhe as ferramentas necessárias para fazer o que você está depois. Deixe-nos saber se você precisa de mais perguntas.

Outras dicas

Você pode querer olhar para o banco de dados que vem com o Firefox 3.5.

https://developer.mozilla.org/en/Storage

No disco. Você não seria capaz de manter tudo na memória de qualquer maneira se é de fato 3x o tráfego. Você sempre pode apagar os dados que não são mais necessários no desligamento e / ou no início da próxima sessão.

A forma específica para armazenar os dados depende das necessidades específicas que você tem - o que você precisa para armazenar, quais são os padrões no acesso a dados. Se, como você diz, você só precisa salvar arquivos individuais recebidos, eu armazená-los como arquivos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top