👋 Nový obsah na borekb.cz

Info Tento blog je v "read-only módu" a nový obsah již nebude přibývat. O vývoji píšu na DevBlog.

Překvápko - #anchor se neposílá na server

Nejsem žádný HTTP expert, ale myslel jsem si, že v obecné rovině mě nemá co překvapit. Jako bych ale slyšel ono Simpsonovské „cháácháá“…

Moje představa byla taková, že když požádám o stránku http://example.com/page.htm?a=1#anchor, někde na serveru budu mít jméno záložky k dispozici. Proč ne, říkal jsem si, třeba taková PHP funkce parse_url umí jméno záložky vrátit. Vůbec mě ale nenapadlo, že část URL za znakem # se do serverové komunikace vůbec nijak nepromítne – jako požadavek se odešle pouze „GET /page.htm?a=1 HTTP/1.1“. V mém konkrétním případě mě to příliš netěší, protože když se jméno záložky nedostane na server, nelze ji ani přesměrovat třeba pomocí mod_rewrite, což by se mi zrovna šiklo.

Ono má neposílání záložky na server svou dobrou logiku, ale prostě mě to nikdy předtím nenapadlo…

Zařazeno do kategorií |
Jan Brašna (So, 2006-06-10 21:42):

A tak pravilo RFC… ;)

Jan Brašna (So, 2006-06-10 21:44):

Ono to totiž na serveru nemá co dělat, anžto to nepatří do identifikace zdroje, proto to serveru neodchází. Takový JS to ale ovládá, takže se to dá používat k lecjakým skriptovacím kejklím.

Vilém Málek (Ne, 2006-06-11 05:00):

Tak na tenhle fór jsem se kdysi nechal také nachytat. Původně jsem si ale myslel, že jde o chybu starého IIS, protože ten ignoruje i jiné části URL, které jsou pak programátorovi nedostupné…

mm-marek (Ne, 2006-06-11 06:41):

nad tím jsem strávil asi tak deset hodin :D no a když to teda nefungovalo, přečet jsem návod… a ejhle!

Leo (Ne, 2006-06-11 08:44):

To je teda objev :-) Leo

Jan Mikula (Ne, 2006-06-11 11:21):

Nedávno jsem řešil obdobný problém a došel jsem ke stejnému pro mě zničujícímu zjištění. Škoda.

B. Stanik T. (Po, 2006-06-12 06:03):

Docela mne to překvapilo. V roce 1997 jsem hledal řešení v HTML, která pracují pouze na klientu – a „kotvu“ nalezl jako jedno z prvních.

Je to docela zajímavá sonda do změny paradigmat v tvorbě webových stránek v průběhu času a „generací“.

Daniel Steigerwald (Po, 2006-06-12 09:32):

Nejsi první kdo je překvapen, svého času se divil i Pixy. Od momentu překvapení přichází moment využití a s ním zase nový moment překvapení ;) Kotvy jsou velmi elegantním způsobem, jak změnu stavu AJAX aplikace zpropagovat do URL, a pak resuscitovat back button…

Leo (Út, 2006-06-13 11:06):

„Kotvy jsou velmi elegantním způsobem, jak změnu stavu AJAX aplikace zpropagovat do URL, a pak resuscitovat back button…“

Opera s tim ma (mela) nejake problemy ne? Leo

Daniel Steigerwald (So, 2006-06-17 18:14):

Ne Opera, ale Safari. I když zaslechl jsem zvěsti, že řešení už se rýsuje. Jednoduché to věru není, naštěstí lze ale dogooglovat.

Komentáře jsou uzavřeny (blog je v read-only módu). Pokud mě chcete kontaktovat, můžete mailem.