Technologie, o kterých se mluví
Událostí dne je - alespoň dle počtu zmínek - jednoznačně uvolnění Google Gears
. Měl by umožnit online aplikacím přechod do „offline“ - tedy práci s daty, které si uloží na lokální disk.
Google Gears
zatím existují pouze jako plugin do IE a Firefoxu. Adobe ohlásili, že Apollo bude obsahovat podporu Google Gears
. (via Ian T.
)
Gears obsahuje tři části - kromě „offline serveru“, který slouží jako server pro lokální verze stránek, skriptů, obrázků aj. i „lokální databázi“ a „WorkerPool“, což je součást, která umožňuje běh časově náročnějších akcí bez zablokování prohlížeče.
Google Gears
rozhodně stojí za brzké vyzkoušení. Další framework pro JS, o kterém vím, že si může ukládat data lokálně, je dojo
(používá k tomu Flashový objekt).
K tématu též:
Oficiální Gears Blog 
http://jilm.blog.lupa.cz/0705/google-gears-online-aplikace-offline
http://www.ajaxline.com/node/388
RFC: http://www.ietf.org/rfc/rfc2617.txt
Wikipedia: http://en.wikipedia.org/wiki/Digest_access_authentication
PHP kód: http://www.xiven.com/sourcecode/digestauthentication.php
Microsoft Silverlight
chce „rozsvítit web“. O co vlastně jde?
Silverlight (dříve WPF/E) je, zjednodušeně řečeno, „něco jako FLASH“. Texhnologie založená na XAML, sloužící k zobrazení vektorové grafiky, streamování videa a návrhu / vývoji aplikací jak pro web, tak pro desktop. Měl by fungovat v různých systémech (zatím Windows a MacOS) a s různými prohlížeči (IE, Firefox, Safari, brzy snad i Opera). Silverlight slibuje mimo jiné i:
- Vyšší kvalitu videa díky kodekům, které jsou založeny na stejných principech jako ty v Blu-Ray a HD-DVD
- Funkčnost v různých OS a prohlížečích. Zatím tedy jen Win a Mac, podporu pro Linux slibuje Mono.
- Zjednodušení spolupráce vývojářů a grafiků
- Zjednodušení streamu videa - na rozdíl od streamování FLASH videa si Silverlight vystačí s IIS a Windows serverem.
- Podporu jiných programovacích jazyků. Silverlight by měl být použitelný z Ruby, Pythonu i JavaScriptu.
- Zabudovanou podporu webových služeb. Silverlight podporuje LINQ a LINQ-to-XML a k veškerým datům je možno přistupovat přes RSS, REST, JSON či POX
- Ochranu multimediálního obsahu (i když si o tom mohu myslet své)
- Zrychlení stránek oproti AJAXovým řešením.
Inu, jsem zvědav na největší vývojářský projekt Microsoftu od spuštění platformy .NET.
Informace o technologii OpenID
OpenID is an open, decentralized, free framework for user-centric digital identity.
OpenID je otevřený. K dispozici jsou zdrojové kódy pro servery i pro klienty v nejrůznějších jazycích
OpenID je decentralizovaný. Není jeden centrální server, je zcela na vás, který si vyberete.
OpenID je „free“. Nikomu se nic neplatí ani za používání OpenID, ani za použití technologie jako takové.
Hlavní stránka: http://openid.net/
OpenID na Wikipedii: http://en.wikipedia.org/wiki/OpenID
Implementace OpenID: http://www.openidenabled.com/
Knihovny pro OpenID: http://www.openidenabled.com/openid/libraries/
Informace česky: http://mozek.cz/info/openid
Články o OpenID v češtině:
Misantropův zápisník: http://zapisnik.maly.cz/493148-co-to-je-openid.php
Bloguje.cz: http://zapisnik.maly.cz/493002-bloguje-cz-implementovalo-technologii-ope...
OpenID servery:
http://www.myopenid.com/
http://www.openid.cz/
REST: Representational_State_Transfer
Wikipedia: http://en.wikipedia.org/wiki/Representational_State_Transfer
Další informace: http://bitworking.org/news/How_to_create_a_REST_Protocol
Citace z http://zapisnik.maly.cz/481925-api-a-php-dil-druhy.php
REST nahlíží na webovou službu jako na souhrn zdrojů dat (resources), z nichž každý má svou URL a požadovaná operace je určena typem HTTP požadavku. Příklad:
http://www.mlp.cz/pepa/notes/ – poznámky uživatele „pepa“
http://www.mlp.cz/pepa/notes/42 – poznámka 42 uživatele „pepa“
Pokud chce klient získat informaci z daného zdroje, pošle HTTP požadavek GET na dané URL. Pokud chce klient vytvořit data, pošle požadavek POST. Požadavkem DELETE vybraný zdroj smaže a požadavkem PUT jej upraví. O výše zmíněné smazání poznámky 42 tedy klient požádá zhruba takovýmto HTTP požadavkem:
DELETE /pepa/notes/42 HTTP/1.1
User-Agent: MojeAplikace/1.0
Host: www.mlp.cz
Píšu ZHRUBA, protože takto by bylo mazání velice „liberální...“ Je potřeba nějak ověřit, že ten, kdo chce přistupovat k datům, má taky právo k nim přistupovat. O autentizaci uživatele ale až příště.
Pro inspiraci můžete kouknout na REST implementaci SQL operací: http://phprestsql.sourceforge.net/
Dva tipy, které se při programování REST API mohou hodit:
echo $_SERVER['REQUEST_METHOD'];
vypíše typ HTTP požadavku (GET, POST, ...)
echo join('',file('php://input'));
vypíše tělo HTTP požadavku v surové podobě