2009-09-22 36 views
6

W moich pokazach chciałbym uniknąć używania tradycyjnych baz danych i przechowywać wszystkie dane po stronie klienta, np. informacje przesłane za pośrednictwem formularza.Po stronie klienta trwałość (przechowywanie)

Jakie alternatywy mam dla tego. Słyszałem o Gears, ale nie mam żadnego praktycznego doświadczenia.

Czy mogę również przechowywać informacje binarne oprócz łańcuchów, np. obraz?

Odpowiedz

5

Możesz rzucić okiem na YUI's StorageUtility. Może korzystać z HTML 5, Google Gears lub SWF na zasadzie rezerwowej.

+2

Wow, używa SWF? To jest okropne. Jest to rzecz, która sprawia, że ​​chcę wyłączyć pamięć flash na żądanie. Całkowite nadużycie i podstępne. Uważam, że niepokojące jest to, że marka taka jak Yahoo i oprogramowanie open source uciekną się do tego, o czym wiadomo, z jakiego rodzaju spamu wiadomo. –

+4

@apphacker: tylko dlatego, że spamerzy używają technologii do niecnych celów, nie oznacza to, że * wszystkie * zastosowania tej technologii są w jakiś sposób złe. Nie ma nic złego w korzystaniu z niego z ważnych powodów. A może powinniśmy zabronić przekierowań HTTP, ponieważ spamerzy używają ich do wysyłania ludzi do złych stron? – NickFitz

+0

@apphacker Nie widzę punktu. Więc nienawidzisz HTML 5 lub Google Gears? –

0

Mam bardzo proste demo do testowania webstorage HTML5/localstorage.

http://www.codebase.es/test/webstorage.html

można przechowywać co chcesz, nie tylko struny. Aby zapisać obraz, skopiuj obraz do płótna i zapisz dane za pomocą metody toDataURL().

Ale nie spodziewaj się, że działa na IE ...

1

Cookies są najbardziej wspierany droga, która będzie działać w różnych przeglądarkach. Otworzyłem małą bibliotekę do pobierania i zapisywania danych za pośrednictwem plików Cookies za pośrednictwem natywnych obiektów javascript.

http://code.google.com/p/mapbug/source/browse/trunk/app/scripts/cookies.js 

Zachęcamy do skopiowania go i użycia według własnego uznania. Trzeba także ten kod javascript izolacji przestrzeni nazw, jeśli używasz go jako to:

http://code.google.com/p/mapbug/source/browse/trunk/app/scripts/namespace.js 

Jeśli masz dużą ilość danych, trzeba będzie rozprowadzać go amoung wiele różnych ciasteczek. Zasadniczo możesz polegać na możliwości zapisania do 4K danych na plik cookie.

1

The YUI StorageUtility jest ładną abstrakcją, jak powiedział Andy. Dojo ma podobną abstrakcję dojox.storage, która działa również w starszych przeglądarkach. Jeśli twoja ilość danych to < 100 KB, możesz łatwo użyć Flasha. Przemyśl uważnie korzystanie z plików cookie HTTP, ponieważ są one nie tylko ograniczone, ale przesyłane za pośrednictwem kabla, co może być pożądane lub nie.

Powiązane problemy