piątek, 29 września 2006

Jak sprawić, żeby Google obsługiwał aplikacje Flex?

Joe Berkowitz z firmy Allurent przedstawił kompoment UrlKit.
Idea tego polega na tym aby obsługiwać aplikacje Flex z poziomu adresów URL (coś tak jak mod_rewrite dla aplikacji w PHP). Do tej pory aplikacje Flash 8 obsługiwały w przeglądarkach interfejs ExternalInterface. Pozwało to na komunikację Flash Playera z przeglądarką (tak jak wykorzystanie przycisków Back Forward w przeglądarce). Można było użyć różnych sposobów na powiązanie paska adresów z tym co ma pokazać Flash Player. Przeważnie to powodowało przeładowywanie strony na której znajdował się Flash Player.
Rowiązanie zastosowane w kompomencie UrlKit jest bardzo unikalne. Dzięki temu można wysłać informację o stanie aplikacji. Każdy stan aplikacji Flex może mieć swój adres URL - chyba tego nie można powiedzieć o aplikacjach AJAX. Możliwe jest przełączanie pomiędzy stanami aplikacji Flex z poziomu przycisków przeglądarki.
Majac różne adresy URL możemy sprawić że odpowiednie informacje też pojawią się na stronie internetowej niezaleznie od tego czy użytkownik ma urchomioną obsługę JavaScriptu. Cała rzecz polega na tym że adresy URL są bardzo specyficzne.
Podczas poruszania się po aplikacji Flex skrypty generują nowy adres URL.
Oto przykład


http://joeberkovitz.com/projects/urlkit/
sample/Bookmarks.html#/StatesExample

otwiera pierwszą zakładkę o nazwie StatesExample, natomiast

http://joeberkovitz.com/projects/urlkit/sample/
Bookmarks.html#/StatesAndFormsExample/sideA;
lowPrice=75;used=t;new=t;brand=Acme;size=medium

przechowuje informacje o stanie danych w zakładce StatesAndFormsExample/sideA

Cała sztuka teraz polefa na przygotowaniu odpowiedniej zawartości strony na której jest dana aplikacja Flex. Warto przygotować tak tworzenie serwisu WWW żeby zawierał obsługę kotwic w hiperłaczach (dzięki napisaniu parsera tych adresów).
http://www.jakisadres.pl/Bookmarks.php#/StatesExample

Teraz roboty sieciowe wchodza na te strony. Pobierają zawartość treściową z tymi linkami wskazującymi na dany stan aplikacji Flex. W taki sposób można przygotować serwis zgodny w dół i zgodny na przyszłość. Co to znaczy? Że zawartośc treściowa serwisu będzie zachowana dla każdego. A jak ktoś ma plugin Flash Player i uruchomioną obsługę JavaScript, to za 10 lat jego aplikacja też będzie nadal obsługiwana.

Uwagi dla programistów: obecna wersja UrlKit działa dobrze pod Internet Explorerem i Firefoxem 1.5 pod Windows. Tworząc aplikację trzeba przewidziec wszystkie możliwe kombinacje adresów występujących w aplikacji Flex i przygotować alternetywną zawartość treściową dla robotów Google (i kazdego kto nie będzie mógł obsługiwać aplikacji Flex).

Brak komentarzy: