Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [skrypt]JSCache 1.1
yaro
post
Post #1





Grupa: Zarejestrowani
Postów: 160
Pomógł: 4
Dołączył: 22.04.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Przedstawiam mój najnowszy skrypt, co prawda nie w PHP ale za to w JavaScript'cie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

JSCache 1.1 jest to skrypt napisany w JavaScript'cie pozwalający cachować, przechowywać dane w pamięci przeglądarki user'a. JSCache wykorzystuje mechanizm globalStorage wprowadzony w HTML 5. Dane zostaną zapamiętane nawet po zamknięciu przeglądarki, po ponownym jej uruchomieniu będą z powrotem dostępne.

W założeniu mamy do dyspozycji 5MB, choć prawdopodobnie Opera będzie ograniczać do 3MB. Jak na razie tylko Firefox 2.x obsługuje globalStorage. Z tego powodu skrypt niestety nie będzie wszechstronny.

JSCache w znaczny sposób przyspiesza czas dostępu do już wcześniej pobranych danych. Zmniejsza częstotliwość komunikacji przeglądarki z serwerem przez AJAX'a. Na pewno będzie miało to znaczenie w przypadku aplikacji webowych.

Więcej na stronie: http://jscache.ajaxin.pl
DEMO: http://jscache.ajaxin.pl/demo/jscache.html

Jeszcze przykład użycia:
Kod
var cache = new JSCache('localhost.localdomain');

var myJSONObject = {"bindings": [
    {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"},
    {"ircEvent": "PRIVMSG", "method": "deleteURI", "regex": "^delete.*"},
    {"ircEvent": "PRIVMSG", "method": "randomURI", "regex": "^random.*"}
  ]
};

cache.save('as', myJSONObject, {ttl: 5});

var ob = cache.get('obj1');
alert(ob.bindings[0].method);


Mam nadzieję że komuś się przydaten skrypt (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
SHiP
post
Post #2





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Fajne (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) pomysl mi się podoba, wykonanie też tylko to demo jest jakieś dziwne - nie działa w Operze :/
Go to the top of the page
+Quote Post
yaro
post
Post #3





Grupa: Zarejestrowani
Postów: 160
Pomógł: 4
Dołączył: 22.04.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


SHiP - tylko Firefox jak na razie obsługuje HTML'a 5 (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Mam nadzieję że sie to za niedługo zmieni.
Go to the top of the page
+Quote Post
lanco
post
Post #4





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 27.05.2008

Ostrzeżenie: (0%)
-----


Hej, jak to zrobic w firefoxie 3.0, bo wyskakuje zawsze błąd ochrony.
Go to the top of the page
+Quote Post
bim2
post
Post #5





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

Ostrzeżenie: (0%)
-----


Jak mówił kolega wyżej:
Cytat
uncaught exception: Security error (NS_ERROR_DOM_SECURITY_ERR)
[Break on this error] this.storage = globalStorage[d];
Go to the top of the page
+Quote Post
yaro
post
Post #6





Grupa: Zarejestrowani
Postów: 160
Pomógł: 4
Dołączył: 22.04.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


O! a to firefox 3 nie lubi mnie? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Zajmę sie tym w najbliższym czasie, (mam dużo do nauki - kolos za kolosem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ), postaram sie jak najszybciej zajrzeć do tego.
Widać że coś zmienili w firefoxie z bezpieczeństwem (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
------------
Dzisiaj (26.11.2008) - znalazłem troche czasu i spróbowałem rozwiązać problem. Na próbach sie jak na razie skończyło (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Jak na mój gust, jak na razie, po zmianach w specyfikacji HTML'a 5, w firefoxie 3 jest pokręcona implementacja DOM Storage, coś jest namieszane. Oczywiście może ja czegoś jeszcze nie dostrzegam (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Tak więc jak na razie to przewiduje problem z poprawnym działaniem tego skryptu, ale sie pocieszam że inne przykłady, nie tylko moje, też nie działają (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

Nie poddaje sie i mam nadzieje ze juz za niedługo będzie wszystko ok.

------------
28.11.2008

Udało mi sie ustalić że ze specyfikacji HTML'a 5 usunięto dotychczasowy model przechowywania danych po stronie klienta (chodzi o globalStorage) i w Firefoxie 3 nie został juz zaimplementowany, ale w zamian wprowadzono (do specyfikacji) localStorage, lecz jeszcze nie zostało to zaimplementowane w Firefoxie 3 (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Jak na razie nie da sie nic zrobić, trzeba czekać, po prostu kiszka.

JSCache powinien działać pod Firefoxem 2.x

Jak sie tylko coś zmieni to postaram sie jak najszybciej poprawić i napisać o tym.

Ten post edytował yaro 28.11.2008, 20:51:23
Go to the top of the page
+Quote Post
lanco
post
Post #7





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 27.05.2008

Ostrzeżenie: (0%)
-----


Dzięki za szybka reakcję. Na razie korzystam z 'sessionStorage' a to działa w Firefoxie 3.0.
W mojej aplikacji to wystarczy bo przy logowaniu zasysam wszystkie potrzebne dane do javascriptu i potem nie muszę ich ponownie ładować w każdym skrypcie php.
Jest to nawet korzystniejsze dla mnie, bo wprowadzam dużo zmian w skryptach i mam problem z ich aktualizacją na komputerach użytkowników.
Może ktoś wie jak wymusić w Firefoxie pobranie za pierwszym logowaniem wszystkich aktualnych skryptów w plikach .js z serwera a nie z casha przeglądarlki, albo jak wyczyścić cash.

Paweł.
Go to the top of the page
+Quote Post
yaro
post
Post #8





Grupa: Zarejestrowani
Postów: 160
Pomógł: 4
Dołączył: 22.04.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


hmm, mysle że zmiana nazwy pliku by tu najszybciej i najpewniej pomogła. Domyślam sie ze zmienianie non stop nazwy odpada, wice może dodaj jakiś ciąg znaków na końcu, jakieś losowy numer.

7 luty 2009
JSCache został naprawiony! Poszukałem, pogrzebałem, podumałem i działa (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Tak więc zapraszam na stronę projektu i oczywiście do testowania, wszystkie błędy, problemy proszę zgłaszać. Starałem się przetestować, ale zawsze coś może być źle.

Ten post edytował yaro 7.02.2009, 23:49:44
Go to the top of the page
+Quote Post
mls
post
Post #9





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Oczywiste jest, że skrypt nie działa.
Kod
ReferenceError: Can't find variable: globalStorage
http://jscache.ajaxin.pl/code/op/jscache.js (line 11)

Safari 3.2.1, OS X 10.5.6
Go to the top of the page
+Quote Post
yaro
post
Post #10





Grupa: Zarejestrowani
Postów: 160
Pomógł: 4
Dołączył: 22.04.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Jak na razie w Safari DOM Storage nie został zaimplementowany. Firefox tylko i wyłącznie, choć słyszałem że w IE 8 mają wprowadzić, jeszcze nie sprawdzałem czy jest.
Go to the top of the page
+Quote Post
mls
post
Post #11





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Za to Safari obsługuje client-side database storage, zgodne z HTML5.
Go to the top of the page
+Quote Post
yaro
post
Post #12





Grupa: Zarejestrowani
Postów: 160
Pomógł: 4
Dołączył: 22.04.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Nie wiedziałem. Dzięki. Dawno nie przeglądałem specyfikacji HTML'a 5. Musze się zająć tym (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) , jak tylko sesja sie skończy.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 19:11